FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Como hacer esto usando BUTTONBAR?
Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Como hacer esto usando BUTTONBAR?
Posted: Tue Aug 04, 2009 07:47 PM
//-> Checa o Botao na Buttobar
Code (fw): Select all Collapse
#Include "FiveWin.ch"

#Define CLR_LGREEN    nRGB( 190, 215, 190 )

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

FUNCTION Main()

   LOCAL oBotao := ARRAY(5), aGet := ARRAY(5)

   LOCAL oDlg, cName := SPACE( 30 ), cName2 := SPACE( 30 )

   SET _3DLOOK ON

   DEFINE DIALOG oDlg FROM 5, 5 TO 17, 40 TITLE "Controle da Barra de Botoes"

   oDlg:lHelpIcon := .F.

   @ 2, 2 GET aGet[1] VAR cName OF oDlg PICTURE "@!"

   @ 3, 2 GET aGet[2] VAR  cName2 OF oDlg PICTURE "@!" ;
          VALID( CHECA_CAIXA( aGet, oBotao, oDlg ), XFOCUS( oBotao[3] ) )

   ACTIVATE DIALOG oDlg CENTERED  ;
            ON INIT Botoes2( aGet, oBotao, oDlg )

   Release All

RETURN NIL

//-> CHECA O CAIXA

STATIC FUNCTION CHECA_CAIXA( aGet, oBotao, oDlg )

   LOCAL cTexto := [TESTE DE XFOCUS NO GET ]

   //-> No funciona - Como se haces
   XFOCUS( oBotao[3] ÿ)  //-> Foco en el tercero boton //-> Salida


RETURN( .T. )

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

STATIC FUNCTION Botoes2( aGet, oBotao, oDlg )

   LOCAL oTab, oHand, oBar

   DEFINE BUTTONBAR oBar SIZE 34,34 3D OF oDlg

   //-> NO FUNCIONA CON EL COMANDO PROMPT ???

   DEFINE BUTTON oBotao[2] PROMPT "&Anadir "  OF oBar  GROUP ;
          ACTION MsgInfo( FWVERSION )                        ;
          MESSAGE "Any BMP File here..."

   DEFINE BUTTON oBotao[2] PROMPT "Alterar "  OF oBar  GROUP ;
          ACTION MsgInfo( FWVERSION )                        ;
          MESSAGE "Reading it from disk !!!"

   DEFINE BUTTON oBotao[3] PROMPT "&Salida "  OF oBar  GROUP ;
          ACTION( oDlg:End() ) CANCEL                        ;
          MESSAGE "Saida - Exit - Cancelar "

   SET MESSAGE OF oDlg TO FWVERSION + " " + FWCOPYRIGHT

   // Tratamentos Para a Barra de Botäes
   oBar:bRClicked := { || NIL } // Mouse Direito
   oBar:bLClicked := { || NIL } // Mouse Esquerdo
   oBar:SetColor( CLR_LIGHTGRAY, CLR_LGREEN )
   oBar:Adjust()

RETURN NIL

//-------------------------------------------------------------------------//
// As vezes simples SetFocus( oObj ) nao faz um objeto ganhar foco
// neste caso pode apelar para estas duas funcoes a seguir
// For‡ar foco para um objeto especifico - Ednaldo Rolim...
//-------------------------------------------------------------------------//
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. )

//-------------------------------------------------------------------------//
FUNCTION xFocus( oObj )

    xSetFocus( oObj )
    xSetFocus( oObj )

RETURN( .T. )



Gracias de antemano.

Saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341

Continue the discussion