FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour hacer que un diálogo con folder vaya al primer get
Posts: 1303
Joined: Tue Jul 21, 2009 08:12 AM
hacer que un diálogo con folder vaya al primer get
Posted: Fri Sep 30, 2011 10:39 AM

Hola,

¿Es posible que en un diálogo con Folder vaya al primer GET de la pestaña 1?.

Gracias.

Muchas gracias. Many thanks.



Un saludo, Best regards,



Harbour 3.2.0dev, Borland C++ 5.82 y FWH 13.06 [producción]



Implementando MSVC 2010, FWH64 y ADO.



Abandonando uso xHarbour y SQLRDD.
Posts: 1286
Joined: Mon Feb 25, 2008 02:54 PM
Re: hacer que un diálogo con folder vaya al primer get
Posted: Fri Sep 30, 2011 11:03 AM

ofld:nOption :=1
oDlg[1]:setfocus()

:D

ubiratanmga@gmail.com

FWH24.04
BCC7.3
HARBOUR3.2
xMate
Pelles´C
TDolphin
Posts: 1303
Joined: Tue Jul 21, 2009 08:12 AM
Re: hacer que un diálogo con folder vaya al primer get
Posted: Fri Sep 30, 2011 11:15 AM

No funciona.

Mi código es:

REDEFINE FOLDER oFld ID 201 OF oDlg ;
PROMPT "&Uno", "&Dos", "&Observaciones" ;
DIALOGS "A1", "A2", "a3"

// ----- GENERAL
REDEFINE GET cCODIGO ID 99 OF oFld:aDialogs[ 1 ]

Y probé con:

ofld:nOption :=1
oFld:aDialogs[ 1 ]:setfocus()

Tampoco

Muchas gracias. Many thanks.



Un saludo, Best regards,



Harbour 3.2.0dev, Borland C++ 5.82 y FWH 13.06 [producción]



Implementando MSVC 2010, FWH64 y ADO.



Abandonando uso xHarbour y SQLRDD.
Posts: 2365
Joined: Wed Nov 02, 2005 11:46 PM
Re: hacer que un diálogo con folder vaya al primer get
Posted: Fri Sep 30, 2011 11:22 AM

Lucas

que version de fivewin usas?

Posts: 1303
Joined: Tue Jul 21, 2009 08:12 AM
Re: hacer que un diálogo con folder vaya al primer get
Posted: Fri Sep 30, 2011 11:32 AM

Daniel,

11.08.

Gracias.

Muchas gracias. Many thanks.



Un saludo, Best regards,



Harbour 3.2.0dev, Borland C++ 5.82 y FWH 13.06 [producción]



Implementando MSVC 2010, FWH64 y ADO.



Abandonando uso xHarbour y SQLRDD.
Posts: 2365
Joined: Wed Nov 02, 2005 11:46 PM
Re: hacer que un diálogo con folder vaya al primer get
Posted: Fri Sep 30, 2011 11:42 AM
Prueba

Code (fw): Select all Collapse
local oGet
...
REDEFINE GET oGet VAR cCODIGO ID 99 OF oFld:aDialogs[ 1 ]
...
...

oFld:SetOption( 1 )
oGet:SetFocus()
Posts: 1303
Joined: Tue Jul 21, 2009 08:12 AM
Re: hacer que un diálogo con folder vaya al primer get
Posted: Fri Sep 30, 2011 11:50 AM
Daniel,

Fïjate cómo tengo definidos los GET:

Code (fw): Select all Collapse
REDEFINE GET cCODIGO ID 99 OF oFld:aDialogs[ 1 ]



Luego, no puedo hacer lo que me dices.

¿No hay forma de saber internamente cuál es el primer control de un folder tipo GET?.

Cuando hago click en el 2 y luego vuelvo al 1, entonces sí que me salta en el primer get.


Gracias
Muchas gracias. Many thanks.



Un saludo, Best regards,



Harbour 3.2.0dev, Borland C++ 5.82 y FWH 13.06 [producción]



Implementando MSVC 2010, FWH64 y ADO.



Abandonando uso xHarbour y SQLRDD.
Posts: 2365
Joined: Wed Nov 02, 2005 11:46 PM
Re: hacer que un diálogo con folder vaya al primer get
Posted: Fri Sep 30, 2011 11:58 AM
Lucas

lucasdebeltran wrote:¿No hay forma de saber internamente cuál es el primer control de un folder tipo GET?.


si

Code (fw): Select all Collapse
nGet = AScan( oFld:aDialogs[ 1 ]:aControls, {| oControl | oControl:IsKindOf( "TGET" ) } )
if nGet > 0
   oGet =  oFld:aDialogs[ 1 ]:aConstrols[ nGet ] 
   oGet:SetFocus()
endif
Posts: 1303
Joined: Tue Jul 21, 2009 08:12 AM
Re: hacer que un diálogo con folder vaya al primer get
Posted: Fri Sep 30, 2011 12:24 PM
Muchas gracias Daniel.

Funciona perfecto.

Dejo el código con un ejemplo:

Code (fw): Select all Collapse
#include "fivewin.ch"

function Main()

   local oDlg, oFld
   local cget := "daniel gracias!!             "



   DEFINE DIALOG oDlg TITLE "FiveWin Dynamic folders" ;
      FROM 5, 5 TO 20, 49

   @ 0.5, 1 FOLDER oFld PROMPT "&xBase", "&And OOP", "&Power" ;
      OF oDlg SIZE 160, 90

   @ 1, 1 BUTTON "&Hello" OF oFld:aDialogs[ 1 ] ;
     ACTION MsgInfo( "Hello world!" )


   @ 4, 1 get  cGet  OF oFld:aDialogs[ 1 ]



   @ 5.5, 11 BUTTON "Ok" OF oDlg ACTION oDlg:End()

   ACTIVATE DIALOG oDlg CENTERED ;
   on init Foco( oFld )

return nil

procedure AppSys // Xbase++ requirement

return



function foco( oFld )


local nGet, oGet

nGet = AScan( oFld:aDialogs[ 1 ]:aControls, {| oControl | oControl:IsKindOf( "TGET" ) } )
if nGet > 0
   oGet =  oFld:aDialogs[ 1 ]:aControls[ nGet ]
   oGet:SetFocus()
endif

return nil
Muchas gracias. Many thanks.



Un saludo, Best regards,



Harbour 3.2.0dev, Borland C++ 5.82 y FWH 13.06 [producción]



Implementando MSVC 2010, FWH64 y ADO.



Abandonando uso xHarbour y SQLRDD.
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: hacer que un diálogo con folder vaya al primer get
Posted: Fri Sep 30, 2011 06:11 PM
Lucas,

Prueba asi tambien:

ACTIVATE DIALOG oDlg ;
ON INIT ( oFld:aDialogs[ 1 ]:setfocus(), .F. )

http://msdn.microsoft.com/en-us/library/windows/desktop/ms645428(v=vs.85).aspx

The dialog box procedure should return TRUE to direct the system to set the keyboard focus to the control specified by wParam. Otherwise, it should return FALSE to prevent the system from setting the default keyboard focus


De ahi que retornemos .F. :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com

Continue the discussion