TVMenu

Fonte: source/classes/VMenu.prg

Hereda de: TControl

TVMenu e um painel estilo ExplorerBar que exibe uma lista de objetos TVItem. Suporta cabecalho colapsavel, animacao de abrir/fechar, multiplos estilos de selecao (SOLID, INSET, XBOX, BUMP, ETCHED, RAISED, UNDERLINE), fundos com degradê e renderizacao com temas. TVMenu e o container pai dos objetos TVItem, que sao automaticamente adicionados ao array aItems do menu ao serem criados. TC5ImgList (oImageList) está em source/classes/tc5imglst.prg e liga-se a partir de FiveH.lib (32 bits) e, desde 26.08, de Five64.a / Fivexh64.a (FWH64). Sample: samples/test/vmenu_test.prg (build_new.bat vmenu_test hb64).

Construtor New()

TVMenu():New( nTop, nLeft, nWidth, nHeight, oWnd, bAction, nClrText, nClrPane,;
              oFont, lBorder, nClrBorder, nHItem, cTextAlign, under, nMargen,;
              nClrPSel, nSpeed, selmode, bChange, nClrTSel, oAttach,;
              nClrTOver, nClrPOver, nClrPOver2, nClrPSel2,;
              lVGradSel, lMGradSel, nClrPane2, cWaterMark )
ParametroTipoDescricao
nTop, nLeftNumericoPosicao em pixels
nWidth, nHeightNumericoDimensoes em pixels
oWndTWindowJanela pai
bActionBlocoAcao padrao para os itens
nClrTextNumericoCor do texto (padrao: branco)
nClrPaneNumericoCor de fundo (padrao: cinza claro)
oFontTFontFonte para o texto dos itens
lBorderLogicoMostrar borda (padrao: .f.)
nHItemNumericoAltura minima do item em pixels
cTextAlignCaractere"LEFT", "CENTER", "RIGHT", "MULTILINE"
underCaractereEstilo de selecao: "SOLID", "INSET", "XBOX", etc.
selmodeCaractereModo de preenchimento: "FILLED", "NONE", "DOTS", etc.
bChangeBlocoExecutado ao mudar a selecao
cWaterMarkCaractereNome do arquivo bitmap para marca d'agua

Metodos

MetodoRetornaDescricao
SetTitle(cCaption, nHTitle, oFont, ...)nilDefinir cabecalho colapsavel
CollapseToggle()nilAlternar estado colapsado/expandido
NextItem()nilMover selecao para proximo item
PrevItem()nilMover selecao para item anterior
ResizeItems()nilRecalcular posicoes dos itens

Membros DATA Principais

DATATipoDescricao
aItemsArrayArray de objetos TVItem
nOptionNumericoIndice do item selecionado atualmente
cTitleCaractereTexto do titulo
lBorderLogicoMostrar borda
nHItemNumericoAltura minima do item
oImageListTC5ImgListLista de imagens para bitmaps dos itens

Exemplo

local oMenu, oItem

DEFINE VMENU oMenu OF oWnd ;
   SIZE 220, 380 ;
   COLORS RGB(55,65,80), RGB(245,246,248) ;
   BORDER ;
   ITEMHEIGHT 40 ;
   STYLE "SOLID" ;
   SELMODE "FILLED"

oMenu:SetTitle( "Explorador", 28, oFont, ;
   RGB(255,255,255), RGB(70,130,180) )

VMENUITEM PROMPT "Inicio" OF oMenu
VMENUITEM PROMPT "Documentos" OF oMenu
VMENUITEM SEPARATOR OF oMenu
VMENUITEM PROMPT "Configuracion" OF oMenu
VMENUITEM PROMPT "Ajuda" OF oMenu

Comandos Preprocessador

DEFINE VMENU

Cria um painel TVMenu (estilo ExplorerBar) dentro de uma janela.

DEFINE VMENU [ oMenu ] ;
   [ AT nTop, nLeft ] ;
   [ SIZE nWidth, nHeight ] ;
   [ OF oWnd ] ;
   [ ACTION bAction ] ;
   [ COLORS nClrText [, nClrPane] ] ;
   [ FONT oFont ] ;
   [ BORDER ] ;
   [ BORDERCOLOR nClrBorder ] ;
   [ ITEMHEIGHT nHItem ] ;
   [ TEXTCENTER | TEXTRIGHT | TEXTMULTILINE ] ;
   [ STYLE "SOLID" | "INSET" | "XBOX" | "BUMP" ] ;
   [ MARGEN nMargen ] ;
   [ SELECTCOLOR nClrPSel ] ;
   [ SELMODE "FILLED" | "NONE" | "DOTS" ] ;
   [ ON CHANGE bChange ] ;
   [ SELECTTEXTCOLOR nClrTSel ] ;
   [ VGRADSEL ] ;
   [ PANE2COLOR nClrPane2 ] ;
   [ WATERMARK cWaterMark ]

REDEFINE VMENU

Redefine um TVMenu a partir de um recurso de dialogo.

REDEFINE VMENU [ oMenu ] ;
   [ ID nId ] ;
   [ OF oWnd ] ;
   [ ACTION bAction ] ;
   [ COLORS nClrText [, nClrPane] ] ;
   [ FONT oFont ] ;
   [ BORDER ] ;
   [ BORDERCOLOR nClrBorder ] ;
   [ ITEMHEIGHT nHItem ] ;
   [ TEXTCENTER | TEXTRIGHT | TEXTMULTILINE ] ;
   [ STYLE "SOLID" | "INSET" | "XBOX" ] ;
   [ SELMODE "FILLED" | "NONE" | "DOTS" ] ;
   [ ON CHANGE bChange ] ;
   [ SELECTTEXTCOLOR nClrTSel ]

VMENUITEM

Cria um TVItem e o adiciona automaticamente ao menu pai.

VMENUITEM [ oItem ] ;
   [ OF oMenu ] ;
   [ PROMPT cText ] ;
   [ BITMAP cBmp ] ;
   [ GROUP | HEADER ] ;
   [ COLORS nClrText [, nClrPane] ] ;
   [ TEXTCENTER | TEXTRIGHT | TEXTMULTILINE ] ;
   [ IMAGECENTER | IMAGERIGHT ] ;
   [ HEIGHT nHeight ] ;
   [ SEPARATOR | LINE | INSET | DOTDOT ] ;
   [ ACTION bAction ] ;
   [ POPUP oPopup ] ;
   [ WHEN bWhen ] ;
   [ TOOLTIP cToolTip ]

Ver Também