Tela com menu, submenu, subjanelas

Neste exemplo será mostrado como criar uma Tela com menu/submenu, chamando uma segunda janela. Os componentes utilizados são:

Tela Principal Twindow()
Menu TMenu
Sub-Menu TMenuItem
Janelas Secundárias TDialog

Veja o exemplo na imagem abaixo:

TelaMenu


#Include "Protheus.ch"

User Function MenuTela()
Local oTela

// --------------------- Cria Tela Principal ------------
oTela := TWindow():New( 10, 10, 400, 400, 'Exemplo TWindow',,,,,,,,CLR_BLACK,CLR_WHITE,,,,,,,.T. )

TMenuBar := TMenuBar():New(oTela)
TMenuBar:nClrPane := RGB(150,178,133)

// --------------------- Cria Menu ---------------------
oTMenu1 := TMenu():New(0,0,0,0,.T.,,oTela)
oTMenu2 := TMenu():New(0,0,0,0,.T.,,oTela)
TMenuBar:AddItem("Menu 1" , oTMenu1, .T.)
TMenuBar:AddItem("Menu 2" , oTMenu2, .T.)
// --------------------- Cria SubMenus ---------------------
oTMenuItem := TMenuItem():New(oTela,"SubMenu 01",,,,{|| SubMenu1() },,"AVGLBPAR1",,,,,,,.T.)
oTMenu1:Add(oTMenuItem)

oTMenuItem := TMenuItem():New(oTela,"SubMenu 02",,,,{|| SubMenu2() },,"AVGLBPAR1",,,,,,,.T.)
oTMenu1:Add(oTMenuItem)

oTMenuItem := TMenuItem():New(oTela,"SubMenu 03",,,,{|| SubMenu3() },,,,,,,,,.T.)
oTMenu2:Add(oTMenuItem)

oTMenuItem := TMenuItem():New(oTela,"SubMenu 04",,,,{|| SubMenu4() },,,,,,,,,.T.)
oTMenu2:Add(oTMenuItem)

oTela:SetMenu( TMenuBar )
oTela:Activate('MAXIMIZED')

Return

// ----------------------------------------------------------------------------------------------

Static Function SubMenu1()
Local oTela1 := Nil

Alert("SubMenu1")

oTela1 := TDialog():New(180,180,450,600,"TDialog - SubMenu 1",,,,,CLR_BLACK,CLR_WHITE,,,.T.)
oTela1:Activate(,,,.T.,{||msgstop('validou!'),.T.},,{||msgstop('Abrindo tDialog SubMenu 1')})

Return

// ----------------------------------------------------------------------------------------------

Static Function SubMenu2()
Local oTela2 := Nil

Alert("SubMenu2")

oTela2 := TDialog():New(180,180,450,600,"TDialog - SubMenu 2",,,,,CLR_BLACK,CLR_WHITE,,,.T.)
oTela2:Activate(,,,.T.,{||msgstop('validou!'),.T.},,{||msgstop('Abrindo tDialog SubMenu 2')})
Return

// ----------------------------------------------------------------------------------------------

Static Function SubMenu3()
Local oTela3 := Nil

Alert("SubMenu3")

oTela3 := TDialog():New(180,180,450,600,"TDialog - SubMenu 3",,,,,CLR_BLACK,CLR_WHITE,,,.T.)
oTela3:Activate(,,,.T.,{||msgstop('validou!'),.T.},,{||msgstop('Abrindo tDialog SubMenu 3')})
Return

// ----------------------------------------------------------------------------------------------

Static Function SubMenu4()
Local oTela4 := Nil

Alert("SubMenu4")

oTela4 := TDialog():New(180,180,450,600,"TDialog - SubMenu 4",,,,,CLR_BLACK,CLR_WHITE,,,.T.)
oTela4:Activate(,,,.T.,{||msgstop('validou!'),.T.},,{||msgstop('Abrindo tDialog SubMenu 4')})
Return 

Um comentário em “Tela com menu, submenu, subjanelas

Deixe um comentário