Cria um objeto do tipo menu/item de menu.
Hierarquia
- TControl
- TMenuItem
Construtores
Propriedades
Métodos
Exemplos
Exemplo 1
#include "TOTVS.CH" User Function TMenuItem() local oDialog := nil local oFolder := nil local aFnctns := __funArr() aScan(aFnctns, {|x|lower(x[1]) == "tmenuitem"}) // cria a janela do teste oDialog := msDialog():new(0, 0, 600, 800, , , , , , , , , , .T.) oDialog:lCentered := .T. // centraliza a janela e ignora a definição anterior de nTop e nLeft // cria as pastas oFolder := tFolder():New(, , , , oDialog, , , , , , , , , ) oFolder:nLeft := 5 oFolder:nTop := 5 oFolder:nWidth := oDialog:nClientWidth - 10 oFolder:nHeight := oDialog:nClientHeight - 10 oFolder:AddItem("tButton", .T.) oFolder:AddItem("tMenu", .T.) oFolder:AddItem("tMenuBar", .T.) // tButton exemploa(oFolder:aDialogs[1]) // tMenu exemplob(oFolder:aDialogs[3]) // tMenuBar exemploc(oFolder:aDialogs[2]) // apresenta a janela oDialog:activate() return static function exemploa(oParent) local oMenu := nil local oButton1 := nil, oMenu01 := nil, oMenu0101 := nil, oMenu0102 := nil, oMenu0103 := nil local oButton2 := nil, oMenu02 := nil, oMenu0201 := nil, oMenu0202 := nil, oMenu0203 := nil local oButton3 := nil, oMenu03 := nil, oMenu0301 := nil, oMenu0302 := nil, oMenu0303 := nil local oSubMenu := nil // cria os menus oMenu01 := tMenu():new(0, 0, 0, 0, .T., , oMenu) oMenu02 := tMenu():new(0, 0, 0, 0, .T., , oMenu) oMenu03 := tMenu():new(0, 0, 0, 0, .T., , oMenu) // cria os itens dos menus oMenu0101 := tMenuItem():new(oMenu01, "Menu 01, item 01", , , , {|| }, , , , , , , , , .T.) oMenu0102 := tMenuItem():new(oMenu01, "Menu 01, item 02", , , , {||msgInfo("Menu 01, item 02")}, , , , , , , , , .T.) oMenu0103 := tMenuItem():new(oMenu01, "Menu 01, item 03", , , .F., {||msgInfo("Menu 01, item 03")}, , , , , , , , , .T.) oMenu0201 := tMenuItem():new(oMenu02, "Menu 02, item 01", , , , {||msgInfo("Menu 02, item 01")}, , , , , , , , , .T.) oMenu0202 := tMenuItem():new(oMenu02, "Menu 02, item 02", , , , {||msgInfo("Menu 02, item 02")}, , , , , , , , , .T.) oMenu0203 := tMenuItem():new(oMenu02, "Menu 02, item 03", , , , {||msgInfo("Menu 02, item 03")}, , , , , , , , , .T.) oMenu0301 := tMenuItem():new(oMenu03, "Menu 03, item 01", , , , {||msgInfo("Menu 03, item 01")}, , , , , , , , , .T.) oMenu0302 := tMenuItem():new(oMenu03, "Menu 03, item 02", , , .F., {||msgInfo("Menu 03, item 02")}, , , , , , , , , .T.) oMenu0303 := tMenuItem():new(oMenu03, "Menu 03, item 03", , , , {||msgInfo("Menu 03, item 03")}, , , , , , , , , .T.) // adiciona os itens dos menus oMenu01:add(oMenu0101) // cria um subitem de um submenu oSubMenu := tMenuItem():new(oMenu0101, "SubMenu 01, item 01", , , , {||msgInfo("SubMenu 01, item 01")}, , , , , , , , , .T.) // adiciona o subitem do submenu oMenu0101:add(oSubMenu) oMenu01:add(oMenu0102) oMenu01:add(oMenu0103) oMenu02:add(oMenu0201) oMenu02:add(oMenu0202) oMenu02:add(oMenu0203) oMenu03:add(oMenu0301) oMenu03:add(oMenu0302) oMenu03:add(oMenu0303) // cria os botões que receberão os menus oButton1 := tButton():create(oParent) oButton1:cCaption := "Button 01" oButton1:nWidth := 100 oButton1:nTop := 30 oButton1:nLeft := 10 oButton1:bAction := {|| } oButton1:setPopupMenu(oMenu01) oButton2 := tButton():create(oParent) oButton2:cCaption := "Button 02" oButton2:nWidth := 100 oButton2:nTop := oButton1:nBottom + 10 oButton2:nLeft := 10 oButton2:bAction := {|| } oButton2:setPopupMenu(oMenu02) oButton3 := tButton():create(oParent) oButton3:cCaption := "Button 03" oButton3:nWidth := 100 oButton3:nTop := oButton2:nBottom + 10 oButton3:nLeft := 10 oButton3:bAction := {|| } oButton3:setPopupMenu(oMenu03) return static function exemplob(oParent) local oMenu := nil local oMenu01 := nil, oMenu0101 := nil, oMenu0102 := nil, oMenu0103 := nil local oMenu02 := nil, oMenu0201 := nil, oMenu0202 := nil, oMenu0203 := nil local oMenu03 := nil, oMenu0301 := nil, oMenu0302 := nil, oMenu0303 := nil local oSubMenu := nil oMenu := tMenu():new(0, 0, 0, 0, .F., "", oParent) // cria os submenus utilizando o construtor new oMenu01 := tMenuItem():new(oMenu, "Menu 01") // cria os submenus utilizando o construtor new2 oMenu02 := tMenuItem():new2(oMenu, "Menu 02") oMenu03 := tMenuItem():new2(oMenu, "Menu 03") // cria os itens dos submenus utilizando o construtor new2 oMenu0101 := tMenuItem():new(oMenu01, "Menu 01, item 01", , , , {|| }) // cria um subitem de um submenu oSubMenu := tMenuItem():new(oMenu0101, "SubMenu 01, item 01", , , , {||msgInfo("SubMenu 01, item 01")}) // adiciona o subitem do submenu oMenu0101:add(oSubMenu) oMenu0102 := tMenuItem():new2(oMenu01, "Menu 01, item 02", , , {||msgInfo("Menu 01, item 02")}) oMenu0103 := tMenuItem():new2(oMenu01, "Menu 01, item 03", , .F., {||msgInfo("Menu 01, item 03")}) oMenu0201 := tMenuItem():new2(oMenu02, "Menu 02, item 01", , , {||msgInfo("Menu 02, item 01")}) oMenu0202 := tMenuItem():new2(oMenu02, "Menu 02, item 02", , , {||msgInfo("Menu 02, item 02")}) oMenu0203 := tMenuItem():new2(oMenu02, "Menu 02, item 03", , , {||msgInfo("Menu 02, item 03")}) // cria os itens dos submenus utilizando o construtor new oMenu0301 := tMenuItem():new(oMenu03, "Menu 03, item 01", , , , {||msgInfo("Menu 03, item 01")}) oMenu0302 := tMenuItem():new(oMenu03, "Menu 03, item 02", , , .F., {||msgInfo("Menu 03, item 02")}) oMenu0303 := tMenuItem():new(oMenu03, "Menu 03, item 03", , , , {||msgInfo("Menu 03, item 03")}) // adiciona os itens dos submenus oMenu01:add(oMenu0101) oMenu01:add(oMenu0102) oMenu01:add(oMenu0103) oMenu02:add(oMenu0201) oMenu02:add(oMenu0202) oMenu02:add(oMenu0203) oMenu03:add(oMenu0301) oMenu03:add(oMenu0302) oMenu03:add(oMenu0303) // adiciona os submenus ao menu principal oMenu:add(oMenu01) oMenu:add(oMenu02) oMenu:add(oMenu03) return static function exemploc(oParent) local oMenu := nil local oMenu01 := nil, oMenu0101 := nil, oMenu0102 := nil, oMenu0103 := nil local oMenu02 := nil, oMenu0201 := nil, oMenu0202 := nil, oMenu0203 := nil local oMenu03 := nil, oMenu0301 := nil, oMenu0302 := nil, oMenu0303 := nil local oSubMenu := nil oMenu := tMenuBar():new(oParent) // cria os submenus oMenu01 := tMenu():new(0, 0, 0, 0, .T., , oMenu) oMenu02 := tMenu():new(0, 0, 0, 0, .T., , oMenu) oMenu03 := tMenu():new(0, 0, 0, 0, .T., , oMenu) // cria os itens dos submenus oMenu0101 := tMenuItem():new(oMenu01, "Menu 01, item 01", , , , {|| }, , , , , , , , , .T.) oMenu0102 := tMenuItem():new(oMenu01, "Menu 01, item 02", , , , {||msgInfo("Menu 01, item 02")}, , , , , , , , , .T.) oMenu0103 := tMenuItem():new(oMenu01, "Menu 01, item 03", , , .F., {||msgInfo("Menu 01, item 03")}, , , , , , , , , .T.) oMenu0201 := tMenuItem():new(oMenu02, "Menu 02, item 01", , , , {||msgInfo("Menu 02, item 01")}, , , , , , , , , .T.) oMenu0202 := tMenuItem():new(oMenu02, "Menu 02, item 02", , , , {||msgInfo("Menu 02, item 02")}, , , , , , , , , .T.) oMenu0203 := tMenuItem():new(oMenu02, "Menu 02, item 03", , , , {||msgInfo("Menu 02, item 03")}, , , , , , , , , .T.) oMenu0301 := tMenuItem():new(oMenu03, "Menu 03, item 01", , , , {||msgInfo("Menu 03, item 01")}, , , , , , , , , .T.) oMenu0302 := tMenuItem():new(oMenu03, "Menu 03, item 02", , , .F., {||msgInfo("Menu 03, item 02")}, , , , , , , , , .T.) oMenu0303 := tMenuItem():new(oMenu03, "Menu 03, item 03", , , , {||msgInfo("Menu 03, item 03")}, , , , , , , , , .T.) // adiciona os itens dos submenus oMenu01:add(oMenu0101) // cria um subitem de um submenu oSubMenu := tMenuItem():new(oMenu0101, "SubMenu 01, item 01", , , , {||msgInfo("SubMenu 01, item 01")}, , , , , , , , , .T.) // adiciona o subitem do submenu oMenu0101:add(oSubMenu) oMenu01:add(oMenu0102) oMenu01:add(oMenu0103) oMenu02:add(oMenu0201) oMenu02:add(oMenu0202) oMenu02:add(oMenu0203) oMenu03:add(oMenu0301) oMenu03:add(oMenu0302) oMenu03:add(oMenu0303) // adiciona os submenus ao menu principal oMenu:addItem("Menu 01", oMenu01, .T.) oMenu:addItem("Menu 02", oMenu02, .T.) oMenu:addItem("Menu 03", oMenu03, .T.) return
Resultado do Exemplo
Abrangência
Microsiga Protheus 8.11, Microsiga Protheus 11, Protheus 10, TOTVS Application Server 10, ByYou Application Server
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas