Código: Selecionar todos
#include "windows.ch"
#include "guilib.ch"
Function Main
Local oWnd
SET DATE BRITISH
SET CENTURY ON
SetTooltipBalloon(.t.)
INIT WINDOW oWnd MAIN TITLE "Controle MonthCalendar" ;
AT 100,100 SIZE 640,480
MENU OF oWnd
MENUITEM "&Calendário 1" ACTION Dlg1()
MENUITEM "&Calendário 2" ACTION Dlg2()
MENUITEM "&Sair" ACTION EndWindow()
ENDMENU
ACTIVATE WINDOW oWnd
Return Nil
//================================================================//
Function Dlg1
Local oDlg
Local oMC
Local oFont
INIT DIALOG oDlg TITLE "Calendário - Exemplo 1" ;
AT 20,20 SIZE 500,300
PREPARE FONT oFont NAME "Arial" WIDTH 0 HEIGHT -12
@ 20,20 MONTHCALENDAR oMC ;
SIZE 250,250 ;
INIT ctod("01/01/2004") ;
ON INIT {||MsgInfo("Evento On Init","MonthCalendar")} ;
ON CHANGE {||MsgInfo("Evento On Change","MonthCalendar")} ;
NOTODAY NOTODAYCIRCLE WEEKNUMBERS ;
FONT oFont ;
TOOLTIP "MonthCalendar - NoToday - NoTodayCircle - WeekNumbers"
@ 300,20 BUTTON "Get Date" ON CLICK {||MsgInfo(dtoc(oMC:GetValue()))} SIZE 100,40
@ 300,60 BUTTON "Set Date" ON CLICK {||oMC:SetValue(Date())} SIZE 100,40
ACTIVATE DIALOG oDlg
Return Nil
//================================================================//
Function Dlg2
Local oDlg
Local oMC
Local oFont
INIT DIALOG oDlg TITLE "Calendário - Exemplo 2" ;
AT 20,20 SIZE 500,300
PREPARE FONT oFont NAME "Courier New" WIDTH 0 HEIGHT -12
@ 20,20 MONTHCALENDAR oMC ;
SIZE 250,250 ;
INIT Date() ;
FONT oFont
@ 300,20 BUTTON "Get Date" ON CLICK {||MsgInfo(dtoc(oMC:GetValue()))} SIZE 100,40
@ 300,60 BUTTON "Set Date" ON CLICK {||oMC:SetValue(Date())} SIZE 100,40
ACTIVATE DIALOG oDlg
Return Nil
Alias, inclusive os gets sao bem melhor
olhe um exemplo
Function CreateChildWindow
Local oChildWnd, oPanel, oFontBtn, oBoton1, oBoton2
Local e1 := "Dialog from prg"
Local e2 := Date()
Local e3 := 10320.54
Local e4:="11222333444455"
Local e5 := 10320.54
PREPARE FONT oFontBtn NAME "MS Sans Serif" WIDTH 0 HEIGHT -12
INIT WINDOW oChildWnd MDICHILD TITLE "Child" STYLE WS_VISIBLE + WS_OVERLAPPEDWINDOW
@ 0,0 PANEL oPanel OF oChildWnd SIZE 0,44
@ 2,3 OWNERBUTTON oBoton1 OF oPanel ID 108 ON CLICK {||oBoton2:Enable()} ;
SIZE 44,38 FLAT ;
TEXT "New" FONT oFontBtn COORDINATES 0,20,0,0 ;
BITMAP cImageDir+"new.bmp" COORDINATES 0,4,0,0 TOOLTIP "New"
@ 46,3 OWNERBUTTON oBoton2 OF oPanel ID 109 ON CLICK {||oBoton2:disable()} ;
SIZE 44,38 FLAT ;
TEXT "Open" FONT oFontBtn COORDINATES 0,20,0,0 ;
BITMAP cImageDir+"open.bmp" COORDINATES 0,4,0,0 TOOLTIP "Open" DISABLED
@ 20,55 GET e1 ;
PICTURE "XXXXXXXXXXXXXXX" ;
SIZE 260, 25
@ 20,80 GET e2 SIZE 260, 25
@ 20,105 GET e3 SIZE 260, 25
@ 20,130 GET e4 ;
PICTURE "@R 99.999.999/9999-99" ;
SIZE 260, 25
@ 20,155 GET e5 ;
PICTURE "@e 999,999,999.99" ;
SIZE 260, 25
@ 20,190 BUTTON "Ok" SIZE 100, 32 ON CLICK {||( MsgInfo( e1 + chr(10) + chr(13) + ;
Dtoc(e2) + chr(10) + chr(13) + ;
Str(e3) + chr(10) + chr(13) + ;
e4 + chr(10) + chr(13) + ;
Str(e5) + chr(10) + chr(13) ;
,"Results:" ) ,oChildWnd:Close() )}
@ 180,190 BUTTON "Cancel" SIZE 100, 32 ON CLICK {||oChildWnd:Close()}
oChildWnd:Activate()
Return Nil
o que vc prefere.
ter que usar form.edit.value para pegar o valor de um get ou ter o valor do get diretamente numa variavel como se fosse no clipper?