Foco en Get de un Folder

Foco en Get de un Folder

Postby MaxFW » Tue Dec 11, 2007 6:42 pm

Hola a todos y gracias de antemano!!
Defino un diálogo con 3 folders y necesito que al inicar, el foco esté en el 1er get del primer Folder. He probado de 100 maneras viendo ejemplos y consultas en el foro y no lo puedo solucionar. Algo estoy haciendo mal, no obstante todos los ejemplos que vi en \SAMPLES, ninguno tiene el foco en el primer objeto del Folder. Siempre hay que clickear con el mouse.
Adjunto código a ver si alguien me ayuda (FW 1.95,Clp 5.2 y Blinker 3.0):

local oDlg
local oFld
local hBorl:=LoadLibrary("MIBWCC.DLL")

local oCodP1, oRazPro1, oBusP1
local oBtnOK, oBtnCancel
local nCodP1:=0, nCodP2:=0, cRazPro1


DEFINE DIALOG oDlg RESOURCE "MARCO"

REDEFINE FOLDER oFld ID 1499 OF oDlg;
PROMPTS "Comprobantes","Valores","Comisión y Gastos";
DIALOGS "LIQUI1","LIQUI2","LIQUI3"

oFld:aEnable := { .t., .f., .f. }

REDEFINE GET oCodP1 VAR nCodP1 PICTURE "9999" ID LQ1_CODP OF oFld:aDialogs[1] UPDATE ;
VALID Eval (ValidaCodp)

REDEFINE GET oRazPro VAR cRazPro PICTURE "@K!" ID LQ1_RAZP OF oFld:aDialogs[1] ;
VALID Eval (ValidaRazP)

REDEFINE BUTTON oBusP ID LQ1_BUSP OF oFld:aDialogs[1] ;
ACTION Eval(ValidaBusP)

REDEFINE BUTTON oBtnCancel ID LQ3_CANCEL OF oDlg ACTION oDlg:End() CANCEL

REDEFINE BUTTON oBtnOK ID LQ3_OK OF oDlg ACTION ....

ACTIVATE DIALOG oDlg CENTERED ;
ON INIT (oFld:aDialogs[1]:bGotFocus:={ || oCodP1:SetFocus() } )


He probado con oFld:SetOption(1),oFld:nOption:=1,oCodP1:SetFocus(.T.), etc y nada funciona

Saludos y gracias!!
MaxFW
 
Posts: 5
Joined: Thu Aug 23, 2007 3:55 am

Postby Antonio Linares » Tue Dec 11, 2007 6:56 pm

Prueba así:
Code: Select all  Expand view  RUN
ACTIVATE DIALOG oDlg CENTERED ;
ON INIT ( oCodP1:SetFocus(), .F. )

Observa el uso de .F.
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42111
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby MaxFW » Tue Dec 11, 2007 7:20 pm

Antonio, Funcionó OK!!
Te agradezco por las horas ahorradas!!
Sería factible saber que función cumple el .F. ese agregado?? No lo tenía entre mis recursos.....
Un abrazo!!
Max
MaxFW
 
Posts: 5
Joined: Thu Aug 23, 2007 3:55 am

Postby Antonio Linares » Tue Dec 11, 2007 7:42 pm

Max,

Es un comportamiento propio del mensaje WM_INITDIALOG de Windows documentado en su API :-)

>
Return Values

The dialog box procedure should return TRUE to direct Windows to set the keyboard focus to the control given by hwndFocus. Otherwise, it should return FALSE to prevent Windows from setting the default keyboard focus.
>
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42111
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain


Return to FiveWin para CA-Clipper

Who is online

Users browsing this forum: No registered users and 30 guests