FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Problema con el foco con dbcombo
Posts: 989
Joined: Thu Nov 24, 2005 03:01 PM
Problema con el foco con dbcombo
Posted: Wed Jun 15, 2011 04:12 PM
El programa siguiente es uno de los samples algo modificado para mostrar el inconveniente.
Resulta que los gets que siguen a un dbcombo tienen un when que depende del valor del dbcombo, pero al tratar de moveme con TAB el when sigue en .F.
El problema se ocasiona al perder el foco, aparentemente no se ha asignado la variable del dbcombo en el momento de evaluarse el when de los gets siguientes para posicionar el cursor.

Esto está compilado con FWH 11.05 y Harbour.
Code (fw): Select all Collapse
/* 
 * Proyecto: probcombo
 * Fichero: prueba.prg
 */
 
 #include 'FiveWin.ch'
 #include 'dbcombo.ch'
 

Function Main()
   local oDlg, oDBC1, oDBC2, oCust, oBtn
   local cDept:= space(3), oStates, aItems, aList
   local cVar, cVar2

   cVar:= 'Only with HR selected'
   cVar2:= 'just Marketing'
   define dialog oDlg size 600, 200  title 'use <tab> only'

   aList:= {"Accounting","HR","Marketing","Production","Research","Shipping","Sales"}
   aItems:= {"100","200","300","400","500","600","700"}

   @ 10,30 DBCOMBO oDBC2 VAR cDept;
      items aItems;
      size 100,200 pixel;
      list aList;
      of oDlg;
      update
      
   @ 30, 30 get cVar PIXEL of oDlg WHEN cDept == '200' UPDATE
   
   @ 50, 30 get cVar2  PIXEL of oDlg WHEN cDept == '300' UPDATE

   @ 70, 50 button oBtn prompt "Selected";
      of oDlg pixel ;
      action msgInfo( "DeptNo: "+cDept,"Selected" );
      default

   activate dialog oDlg center;

   ferase("temp.ntx")

return nil

            
Return NIL
Saludos
Carlos Mora
http://harbouradvisor.blogspot.com/
StackOverflow http://stackoverflow.com/users/549761/carlos-mora
“If you think education is expensive, try ignorance"
Posts: 845
Joined: Sun Oct 09, 2005 05:36 PM
Re: Problema con el foco con dbcombo
Posted: Wed Jun 15, 2011 11:03 PM

Carlos
prueba esto:
oDBC2:b LostFocus := {|| oDlg:Update()}

ó esto otro
oDBC2:bLostFocus := {|| oGet:ForWhen() }
ó esto otro
oDBC2:bLostFocus := {|| oGet:AeValWhen() }

salu2
paco

____________________

Paco
Posts: 2365
Joined: Wed Nov 02, 2005 11:46 PM
Re: Problema con el foco con dbcombo
Posted: Wed Jun 15, 2011 11:07 PM
Carlos

usalo de esta forma

Code (fw): Select all Collapse
   @ 10,30 DBCOMBO oDBC2 VAR cDept;
      items aItems;
      size 100,200 pixel;
      list aList;
      of oDlg;
      on change ( oDlg:AEvalWhen(), oDlg:Update() );
      update
Posts: 989
Joined: Thu Nov 24, 2005 03:01 PM
Re: Problema con el foco con dbcombo
Posted: Thu Jun 16, 2011 07:47 AM

Gracias amigos por las respuestas. He probado la solución de Daniel y me ha funcionado perfecto.

Saludos
Carlos Mora
http://harbouradvisor.blogspot.com/
StackOverflow http://stackoverflow.com/users/549761/carlos-mora
“If you think education is expensive, try ignorance"

Continue the discussion