// C:\FWH..\SAMPLES\WHENOCBX.PRG
// This sample shows how to create a test Bar with a Valid ON CHANGE.
#Include "FiveWin.ch"
#Define CLR_SOFTYELLOW nRGB( 255, 251, 225 )
#Define CLR_LGREEN nRGB( 190, 215, 190 )
#Define COLOR_BTNFACE 15
#Define aPubGrad {| lInvert | If( lInvert, ;
{ { 1 / 3, nRGB( 255, 253, 222 ), nRGB( 255, 231, 151 ) }, ;
{ 2 / 3, nRGB( 255, 215, 84 ), nRGB( 255, 233, 162 ) } ;
}, ;
{ { 1 / 2, nRGB( 219, 230, 244 ), nRGB( 207 - 50, 221 - 25, 255 ) }, ;
{ 1 / 2, nRGB( 201 - 50, 217 - 25, 255 ), nRGB( 231, 242, 255 ) } ;
} ) }
STATIC oWnd, lWhenoCbx := .T.
FUNCTION Main()
LOCAL oGet, oFnt, oFont, oBar, oBtn, oBtn2, nYear, cExtractSel, ;
aShowCbx := ARRAY(5), PANY := YEAR( DATE() ), cTitle, oBrush
// Show de ComboBox by Silvio Falconi
LOCAL aShowExtract := { "Estrazioni continue","Estrazioni annuali", ;
"Silvio Falconi" }
HB_GCALL( .F. )
SkinButtons()
SetGetColorFocus( CLR_LGREEN )
tGet():lDisColors := .F.
tGet():nClrTextDis := CLR_HBLUE
tGet():nClrPaneDis := CLR_SOFTYELLOW
nYear := YEAR( DATE() )
DEFINE BRUSH oBrush COLOR CLR_LGREEN
DEFINE FONT oFnt NAME "Ms Sans Serif" SIZE 00, -14 BOLD
DEFINE FONT oFont NAME "Ms Sans Serif" SIZE 00, -16 BOLD
cTitle := "Test Bar & Valid/On Change for Silvio Falconi"
DEFINE WINDOW oWnd TITLE cTitle BRUSH oBrush BORDER SINGLE MDI ;
MENU BuildMenu() MENUINFO 4
DEFINE BUTTONBAR oBar BUTTONSIZE 50, 50 _3DLOOK TOP OF oWnd 2007
WITH OBJECT oBar
oBar:bClrGrad := aPubGrad // Preferi assim.
oBar:bRClicked := { || NIL } // Botao direito do Mouse desligado.
oBar:bLClicked := { || NIL } // Botao Esquerdo do Mouse desligado.
oBar:nClrText := CLR_HBLUE
oBar:Adjust()
oBar:SetFont( oFont )
END
@ 1, 10 COMBOBOX aShowCbx Var cExtractSel ITEMS aShowExtract OF oBar ;
SIZE 200, 300 STYLE CBS_DROPDOWN ;
ON CHANGE( QueoCbx( aShowCbx:nAt, cExtractSel, oGet ) )
IF Set( _SET_INSERT, ! Set( _SET_INSERT ) )
Set( _SET_INSERT, ! Set( _SET_INSERT ) )
ENDIF
@ 15, 300 GET oGet VAR nYear SIZE 150,22 PIXEL OF oBar CENTER ;
FONT oFont UPDATE WHEN( lWhenoCbx )
oGet:disable()
oGet:lBtnTransparent := .T. // transparent button get oGet3
oGet:lAdjustBtn := .T. // Button Get Adjust Witdh oGet3
oGet:lDisColors := .F. // Deactive disable color
oGet:nClrTextDis := CLR_YELLOW // Color text disable status
oGet:nClrPaneDis := CLR_BLACK // Color Pane disable status
// Buttons
DEFINE BUTTON oBtn OF oBar PROMPT "&Exit" NOBORDER GROUP CENTER ;
ACTION( oWnd:End() )
oBtn:cToolTip := "Salida - Exit - Cancelar"
SET MESSAGE OF oWnd TO OemToAnsi ;
( "- CopyRight (C) JoÆo Santos @" + ALLTRIM( STR( PANY ) ) + [ - ] + ;
" <!-- e --><a href="mailto:kapiabafwh@gmail.com.br">kapiabafwh@gmail.com.br</a><!-- e --> - Brazil " ) ;
KEYBOARD COLOR CLR_HBLUE, GetSysColor( COLOR_BTNFACE ) FONT oFnt 2007
oWnd:oMsgBar:SetColor( CLR_HBLUE, CLR_HBLUE )
oWnd:oMsgBar:Refresh()
oWnd:oMsgBar:KeybOn()
oWnd:oMsgBar:DateOn()
oWnd:oMsgBar:ClockOn()
oWnd:oMsgBar:Refresh()
ACTIVATE WINDOW oWnd MAXIMIZED ON INIT( xFocus( oGet ) )
IF Set( _SET_INSERT, ! Set( _SET_INSERT ) )
Set( _SET_INSERT, ! Set( _SET_INSERT ) )
ENDIF
oBrush:End()
oFnt:End()
oFont:End()
Release All
SysRefresh()
HB_GCALL( .T. )
CLEAR MEMORY
PostQuitMessage( 0 )
QUIT
RETURN NIL
FUNCTION BuildMenu()
LOCAL oMenu
MENU oMenu 2007
MENUITEM "&Salida" ;
MESSAGE( "Saida(Escape) do Sistema" )
MENU
MENUITEM "Sair do Sistema " ;
RESOURCE "SAIDA16X16" ;
ACCELERATOR ACC_ALT, ASC( "S" ) ;
ACTION( oWnd:End() ) ;
MESSAGE "Saida Para o Sistema Operacional(Windows)"
ENDMENU
ENDMENU
RETURN( oMenu )
FUNCTION QueoCbx( nOpt, cText, oGet )
LOCAL cTxtSil := "Silvio"
LOCAL nYear := YEAR( DATE() )
IF nOpt = 1
lWhenoCbx := .F.
oGet:Hide()
oGet:Refresh()
ELSEIF nOpt = 2
lWhenoCbx := .F.
oGet:Show()
oGet:Disable()
oGet:VARPUT( nYear )
oGet:Refresh()
ELSEIF nOpt = 3 // Silvio Falconi
lWhenoCbx := .T.
oGet:Show()
oGet:Enable()
oGet:VARPUT( cTxtSil )
oGet:Refresh()
xFocus( oGet )
ENDIF
RETURN NIL
FUNCTION xFocus( oObj )
xSetFocus( oObj )
xSetFocus( oObj )
RETURN( .T. )
FUNCTION xSetFocus( oObj )
LOCAL _oWnd := oObj:oWnd, _oTempo := ""
DEFINE TIMER _oTempo INTERVAL 10 OF _oWnd ;
ACTION ( oObj:SetFocus(), _oTempo:End() )
ACTIVATE TIMER _oTempo
RETURN( .T. )
// fin / end - João Santos - São Paulo Brasil - <!-- e --><a href="mailto:kapiabafwh@gmail.com">kapiabafwh@gmail.com</a><!-- e -->
Regards, saludos.