Browse Zebrado
Enviado: 07 Out 2009 14:23
Olá,
Alguém teria um exemplo de browse zebrado?
[]´s
Alguém teria um exemplo de browse zebrado?
[]´s
Código: Selecionar todos
#include "minigui.ch"
Function Main
Private bColor := { || if ( recno()/2 == int(recno()/2) , { 222,222,222 } , { 192,192,192 } ) }
Private fColor := { || if ( recno()/2 == int(recno()/2) , { 0,255,0 } , { 0,0,255 } ) }
SET CENTURY ON
SET DELETED ON
SET BROWSESYNC ON
DEFINE WINDOW Form_1 ;
AT 0,0 ;
WIDTH 640 HEIGHT 480 ;
TITLE 'MiniGUI Browse Demo)' ;
MAIN NOMAXIMIZE ;
ON INIT OpenTables() ;
ON RELEASE CloseTables()
DEFINE MAIN MENU
POPUP 'File'
ITEM 'Set Browse Value' ACTION Form_1.Browse_1.Value := Val ( InputBox ('Set Browse Value','') )
ITEM 'Get Browse Value' ACTION MsgInfo ( Str ( Form_1.Browse_1.Value ) )
ITEM 'Refresh Browse' ACTION Form_1.Browse_1.Refresh
SEPARATOR
ITEM 'Set Browse Width' ACTION Form_1.Browse_1.Width := Val ( InputBox ('Set Browse Width','') )
ITEM 'Set Browse Height' ACTION Form_1.Browse_1.Height := Val ( InputBox ('Set Browse Height','') )
ITEM 'Set Browse Row' ACTION Form_1.Browse_1.Row := Val ( InputBox ('Set Browse Row','') )
ITEM 'Set Browse Col' ACTION Form_1.Browse_1.Col := Val ( InputBox ('Set Browse Col','') )
SEPARATOR
ITEM 'Get RecNo()' ACTION MsgInfo ( Str ( Test->(RecNo()) ) )
SEPARATOR
ITEM 'Exit' ACTION Form_1.Release
END POPUP
POPUP 'Help'
ITEM 'About' ACTION MsgInfo ("MiniGUI Browse Demo")
END POPUP
END MENU
DEFINE STATUSBAR
STATUSITEM ''
END STATUSBAR
@ 10,10 BROWSE Browse_1 ;
WIDTH 610 ;
HEIGHT 390 ;
HEADERS { 'Code' , 'First Name' , 'Last Name', 'Birth Date', 'Married' , 'Biography' } ;
WIDTHS { 150 , 150 , 150 , 150 , 150 , 150 } ;
WORKAREA Test ;
FIELDS { 'Test->Code' , 'Test->First' , 'Test->Last' , 'Test->Birth' , 'Test->Married' , 'Test->Bio' } ;
TOOLTIP 'Browse Test' ;
ON CHANGE ChangeTest() ;
DELETE ;
LOCK ;
EDIT APPEND ;
DYNAMICBACKCOLOR { bColor , bColor, bColor, bColor, bColor, bColor } ;
DYNAMICFORECOLOR { fColor , fColor, fColor, fColor, fColor, fColor } ;
INPUTMASK { '$99.9', REPLICATE ( '!' , 32 ) , REPLICATE ( '!' , 32 ) , '' , '' , '' } ;
FORMAT { '','','','','','' } ;
END WINDOW
CENTER WINDOW Form_1
Form_1.Browse_1.SetFocus
ACTIVATE WINDOW Form_1
Return Nil
Procedure OpenTables()
CreateTable()
Use Test Index Code
Go Top
Form_1.Browse_1.Value := RecNo()
Return Nil
Procedure CloseTables()
Use
Return Nil
Procedure ChangeTest()
Form_1.StatusBar.Item(1) := 'RecNo() ' + Alltrim ( Str ( RecNo ( ) ) )
Return
Procedure CreateTable
Use test
zap
For i:= 1 To 100 // 000
append blank
Replace code with i
Replace First With 'First Name '+ Str(i)
Replace Last With 'Last Name '+ Str(i)
Replace Married With .t.
replace birth with date()+i-10000
Next i
/*
For i:= 1 To 200 Step 2
go i
Replace Married With .f.
Next i
*/
Index On Code To Code
Use
ReturnCódigo: Selecionar todos
Private bColor := { || if ( recno()/2 == int(recno()/2) , { 222,222,222 } , { 192,192,192 } ) }
Private fColor := { || if ( recno()/2 == int(recno()/2) , { 0,255,0 } , { 0,0,255 } ) } Código: Selecionar todos
Private bColor := { || if ( This.CellRowIndex/2 == int(This.CellRowIndex/2) , { 222,222,222 } , { 192,192,192 } ) }
Private fColor := { || if ( This.CellRowIndex/2 == int(This.CellRowIndex/2) , { 0,255,0 } , { 0,0,255 } ) } Código: Selecionar todos
Private bColor := { || if ( recno()/2 == int(recno()/2) , { 222,222,222 } , { 192,192,192 } ) }
Private fColor := { || if ( recno()/2 == int(recno()/2) , { 0,255,0 } , { 0,0,255 } ) } Código: Selecionar todos
Private bColor := { || if ( OrdKeyNo()/2 == int(OrdKeyNo()/2) , { 222,222,222 } , { 192,192,192 } ) }
Private fColor := { || if ( OrdKeyNo()/2 == int(OrdKeyNo()/2) , { 0,255,0 } , { 0,0,255 } ) } Esta função (OrdKeyNo()) é do Harbour/xHarbour. Neste link você vai encontrar um Guia de Referência do xHarbour em inglês.Mario Mesquita escreveu:Onde vc encontrou esse método ou função obscura?