He actualizado a FiveWin 10.8 y nome Funciona la tecla ENTER

He actualizado a FiveWin 10.8 y nome Funciona la tecla ENTER

Postby colthop » Wed Sep 01, 2010 10:15 am

Hola amigos:

Mi problema es que cuando entro en una ventana donde edito los datos con GETS no me funcionan las teclas TAB, ENTER para pasar de un campo a otro. el codigo por ejemplo es :

Code: Select all  Expand view
procedure librmay1()
seleacti (1)
if numact = 0
  SaliMenu()
else
  SELECT 18
  use &ZN SHARED
  OrdSetFocus (zna)
  go top
  if numact = 1000000
    go top
  else
    seek str(numact,6,0)
  endif
  store finicio       to va001
  store ffinal        to va002
  store      0        to va003
  store 999999        to va004
  store "1          " to va005
  store "8          " to va006
  store      1        to va007
  store zdatita       to va008
  store 11 to va009
  store 1 to opci11,opci13,opci14,OPCI00
  opci14 = .T.
  opci16 = .F.
  opci15 = .F.
  opci20 = .F.
  USE
  CreaVent(230,430)
  zIniBot = (zLar - 150) / 2
  @ 10*ProporV, 10*ProporH SAY tDlg001 VAR LocaText(150,1)                                     OF oDlgwVen PIXEL COLOR escri01, fondo01 FONT oFont SIZE 200*ProporH,zProPorV*ProPorV
  @ 10*ProporV,150*ProporH SAY tDlg002 VAR LocaText(150,2)                                     OF oDlgwVen PIXEL COLOR escri01, fondo01 FONT oFont SIZE 200*ProporH,zProPorV*ProPorV
  @ 70*ProporV, 10*ProporH SAY tDlg003 VAR LocaText(150,4)                                     OF oDlgwVen PIXEL COLOR escri01, fondo01 FONT oFont SIZE 200*ProporH,zProPorV*ProPorV
  @110*ProporV, 80*ProporH SAY tDlg004 VAR LocaText(150,5)                                     OF oDlgwVen PIXEL COLOR escri01, fondo01 FONT oFont SIZE 200*ProporH,zProPorV*ProPorV
  @110*ProporV,180*ProporH SAY tDlg005 VAR LocaText(150,6)                                     OF oDlgwVen PIXEL COLOR escri01, fondo01 FONT oFont SIZE 200*ProporH,zProPorV*ProPorV
  @110*ProporV,280*ProporH SAY tDlg006 VAR LocaText(150,7)                                     OF oDlgwVen PIXEL COLOR escri01, fondo01 FONT oFont SIZE 200*ProporH,zProPorV*ProPorV
  @130*ProporV, 10*ProporH SAY tDlg007 VAR LocaText(150,8)                                     OF oDlgwVen PIXEL COLOR escri01, fondo01 FONT oFont SIZE 200*ProporH,zProPorV*ProPorV
  @150*ProporV, 10*ProporH SAY tDlg008 VAR LocaText(150,9)                                     OF oDlgwVen PIXEL COLOR escri01, fondo01 FONT oFont SIZE 200*ProporH,zProPorV*ProPorV
  @170*ProporV, 10*ProporH SAY tDlg009 VAR LocaText(245,8)                                     OF oDlgwVen PIXEL COLOR escri01, fondo01 FONT oFont SIZE 200*ProporH,zProPorV*ProPorV
  @ 30*ProporV, 10*ProporH RADIO    gDlg012 VAR opci00 PROMPT LocaText(136,1), LocaText(137,1) OF oDlgwVen PIXEL COLOR escri01, fondo01 SIZE  75*ProPorH,zProPorV*ProPorV
  @ 30*ProporV, 65*ProporH GET      gDlg013 VAR va008                                          OF oDlgwVen PIXEL COLOR escri02, fondo02 FONT oFont SIZE  65*ProporH,zProPorV*ProPorV CENTER
  @ 70*ProporV, 89*ProporH GET      gDlg003 VAR va007                                          OF oDlgwVen PIXEL COLOR escri02, fondo02 FONT oFont SIZE  41*ProporH,zProPorV*ProPorV CENTER pict "######"
  @ 30*ProporV,150*ProporH RADIO    gDlg004 VAR opci13 PROMPT LocaText(226,7), LocaText(226,8), LocaText(226,9), LocaText(227,1) OF oDlgwVen PIXEL COLOR escri01, fondo01 SIZE 75*ProPorH,zProPorV*ProPorV
  @ 30*ProporV,245*ProPorH CheckBox gDlg005 VAR opci14 PROMPT LocaText(225,8)                  OF oDlgwVen PIXEL COLOR escri01, fondo01 FONT oFont SIZE 140*ProPorH,zProPorV*ProPorV
  @ 50*ProporV,245*ProPorH CheckBox gDlg006 VAR opci20 PROMPT LocaText(225,9)                  OF oDlgwVen PIXEL COLOR escri01, fondo01 FONT oFont SIZE 140*ProPorH,zProPorV*ProPorV
  @ 70*ProporV,245*ProPorH CheckBox gDlg007 VAR opci16 PROMPT LocaText(152,8)                  OF oDlgwVen PIXEL COLOR escri01, fondo01 FONT oFont SIZE 160*ProPorH,zProPorV*ProPorV
  @130*ProporV, 80*ProporH GET      gDlg008 VAR va001                                          OF oDlgwVen PIXEL COLOR escri02, fondo02 FONT oFont SIZE  65*ProporH,zProPorV*ProPorV CENTER
  @150*ProporV, 80*ProporH GET      gDlg009 VAR va002                                          OF oDlgwVen PIXEL COLOR escri02, fondo02 FONT oFont SIZE  65*ProporH,zProPorV*ProPorV CENTER                     VALID va002 >= va001
  @130*ProporV,180*ProporH GET      gDlg010 VAR va003                                          OF oDlgwVen PIXEL COLOR escri02, fondo02 FONT oFont SIZE  41*ProporH,zProPorV*ProPorV CENTER pict "######"
  @150*ProporV,180*ProporH GET      gDlg011 VAR va004                                          OF oDlgwVen PIXEL COLOR escri02, fondo02 FONT oFont SIZE  41*ProporH,zProPorV*ProPorV CENTER pict "######"       VALID va004  >= va003
  @130*ProporV,280*ProporH GET      gDlg001 VAR va005                                          OF oDlgwVen PIXEL COLOR escri02, fondo02 FONT oFont SIZE  71*ProporH,zProPorV*ProPorV CENTER pict "###########"  VALID bus2va006 (1)
  @150*ProporV,280*ProporH GET      gDlg002 VAR va006                                          OF oDlgwVen PIXEL COLOR escri02, fondo02 FONT oFont SIZE  71*ProporH,zProPorV*ProPorV CENTER pict "###########"  VALID bus2va006 (2)
  @170*ProporV,180*ProporH GET      gDlg014 VAR va009                                          OF oDlgwVen PIXEL COLOR escri02, fondo02 FONT oFont SIZE  17*ProporH,zProPorV*ProPorV CENTER pict "##"  VALID (va009 > 0 .AND. va009 < 6) .OR. va009 = 11
  @170*ProporV,210*ProPorH CheckBox gDlg015 VAR opci15 PROMPT LocaText(152,9)                  OF oDlgwVen PIXEL COLOR escri01, fondo01 FONT oFont SIZE 230*ProPorH,zProPorV*ProPorV
  @(zAnc-30)*ProPorV,(zIniBot    )*ProPorH BUTTON xPul01 PROMPT LocaText(133,1) OF oDlgwVen PIXEL SIZE  70*ProPorH,20*ProPorV FONT oFont ACTION librmay11()
  @(zAnc-30)*ProPorV,(zIniBot+ 80)*ProPorH BUTTON xPul02 PROMPT LocaText(134,1) OF oDlgwVen PIXEL SIZE  70*ProPorH,20*ProPorV FONT oFont ACTION librmay12()
  gDlg012:SetFont(oFont)
  gDlg004:SetFont(oFont)
  gDlg008:SetFocus()
endif
RETURN (NIL)


Code: Select all  Expand view
PROCEDURE CreaVent(zanc1,zlar1)
zAnc = zAnc1
zLar = zLar1
zVer = int((600  - zanc)/2)
zHor = int((1024 - (zlar*zProPorH))/2)
DEFINE WINDOW oDlgwVen OF oVentPrinc MDICHILD PIXEL FROM zVer*ProPorV,zHor*ProPorH TO (zVer+zAnc)*ProPorV,(zHor+zLar)*ProPorH COLORS escri01, fondo01  STYLE nOr(WS_DLGFRAME)
  SET FONT OF oDlgwVen TO oFont
ACTIVATE WINDOW oDlgwVen NORMAL VALID (if (GetKeyState (VK_ESCAPE), .F.,oDlgwVen:End()))
oDlgwVen:Show()
RETURN (.T.)


Un saludo

Carlos
Colt Hop ED, S.L.
Carlos Blas Fernández Domínguez
Tlfo: 645847093
E-Mail: carlos@colthop.es

Nunca se termina de aprender, por eso necesito siempre ayuda.
colthop
 
Posts: 505
Joined: Sat Apr 22, 2006 9:09 am
Location: Madrid - España

Re: He actualizado a Fyvewin 10.8 y nome Funciona la tecla ENTER

Postby colthop » Sun Sep 05, 2010 8:19 am

Hola de nuevo:

Antonio he actualizado de nuevo la version de Fivewin a la que habeis puesto, y me sigue pasando lo mismo, me podrias decir algo de porque con la actualizcion 10.8 no me funcionan los cursores ni algunas las teclas de control.

Un saludo

Carlos
Colt Hop ED, S.L.
Carlos Blas Fernández Domínguez
Tlfo: 645847093
E-Mail: carlos@colthop.es

Nunca se termina de aprender, por eso necesito siempre ayuda.
colthop
 
Posts: 505
Joined: Sat Apr 22, 2006 9:09 am
Location: Madrid - España

Re: He actualizado a Fyvewin 10.8 y nome Funciona la tecla ENTER

Postby Antonio Linares » Sun Sep 05, 2010 8:36 am

Carlos,

Puedes proporcionar un ejemplo mas simple ? gracias

Los GETs estan sobre una ventana, ventana mdichild ó diálogo ?

Hay algún ejemplo de FWH 10.8 que reproduzca el error ?
regards, saludos

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

Re: He actualizado a Fyvewin 10.8 y nome Funciona la tecla ENTER

Postby colthop » Sun Sep 05, 2010 10:03 am

Hola Antonio:

Los GET estan en laventana que se define en el segundo recuadro.

Un saludo

Carlos
Colt Hop ED, S.L.
Carlos Blas Fernández Domínguez
Tlfo: 645847093
E-Mail: carlos@colthop.es

Nunca se termina de aprender, por eso necesito siempre ayuda.
colthop
 
Posts: 505
Joined: Sat Apr 22, 2006 9:09 am
Location: Madrid - España

Re: He actualizado a Fyvewin 10.8 y nome Funciona la tecla ENTER

Postby Antonio Linares » Sun Sep 05, 2010 11:09 am

Carlos,

Aqui tienes un pequeño ejemplo autocontenido que funciona correctamente. Pruébalo por favor:

Code: Select all  Expand view
#include "FiveWin.ch"

function Main()

   local oWnd

   DEFINE WINDOW oWnd MDI
   
   CreateChild( oWnd )

   ACTIVATE WINDOW oWnd

return nil

function CreateChild( oWnd )

   local oWndChild
   local cText1 := "Hello", cText2 := "World"
   
   DEFINE WINDOW oWndChild MDICHILD OF oWnd
   
   @ 1, 1 GET cText1 OF oWndChild SIZE 80, 20

   @ 4, 1 GET cText2 OF oWndChild SIZE 80, 20
   
   ACTIVATE WINDOW oWndChild
   
return nil  
 
regards, saludos

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

Re: He actualizado a FiveWin 10.8 y nome Funciona la tecla ENTER

Postby colthop » Sun Sep 12, 2010 6:43 pm

Hola a todos:

Ya he averiguado por que no me funciona la tecla ENTER y otras en las ventanas y es por la clausula "STYLE nOr(WS_DLGFRAME)", yo la uso para que la ventana que aparece sea solo un marco sin barra de titulo en la parte de arriba.

Me podriais decir si existe otra forma que se pueda dar este estilo y que funcionen las teclas.

Un saludo

Carlos
Colt Hop ED, S.L.
Carlos Blas Fernández Domínguez
Tlfo: 645847093
E-Mail: carlos@colthop.es

Nunca se termina de aprender, por eso necesito siempre ayuda.
colthop
 
Posts: 505
Joined: Sat Apr 22, 2006 9:09 am
Location: Madrid - España

Re: He actualizado a FiveWin 10.8 y nome Funciona la tecla ENTER

Postby Antonio Linares » Sun Sep 12, 2010 11:08 pm

Carlos,

Te refieres a que lo haces asi ?

DEFINE WINDOW oWndChild MDICHILD OF oWnd STYLE nOr(WS_DLGFRAME)
regards, saludos

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

Re: He actualizado a FiveWin 10.8 y nome Funciona la tecla ENTER

Postby colthop » Mon Sep 13, 2010 6:42 am

Hola Antonio:

Ahora he estado haciendo pruebas y he compilado tu ejemplo y funciona perfectamente el ENTER, pero simplemente he puesto NOCAPTION en la linea:

DEFINE WINDOW oWndChild MDICHILD OF oWnd

y ya no me funciona el ENTER, haz tu la prueba. He probado con:

STYLE nOr(WS_DLGFRAME)
STYLE nOr(WS_BORDER)

y pasa lo mismo.

En espera de tu respuesta

Un saludo

Carlos
Colt Hop ED, S.L.
Carlos Blas Fernández Domínguez
Tlfo: 645847093
E-Mail: carlos@colthop.es

Nunca se termina de aprender, por eso necesito siempre ayuda.
colthop
 
Posts: 505
Joined: Sat Apr 22, 2006 9:09 am
Location: Madrid - España

Re: He actualizado a FiveWin 10.8 y nome Funciona la tecla ENTER

Postby Antonio Linares » Mon Sep 13, 2010 8:11 am

Carlos,

Asi funciona:
Code: Select all  Expand view
#include "FiveWin.ch"

function Main()

   local oWnd

   DEFINE WINDOW oWnd MDI
   
   CreateChild( oWnd )

   ACTIVATE WINDOW oWnd

return nil

function CreateChild( oWnd )

   local oWndChild
   local cText1 := "Hello", cText2 := "World"
   
   DEFINE WINDOW oWndChild MDICHILD OF oWnd NOCAPTION
   
   @ 1, 1 GET cText1 OF oWndChild SIZE 80, 20

   @ 4, 1 GET cText2 OF oWndChild SIZE 80, 20
   
   AEval( oWndChild:aControls, { | o | o:bKeyDown := { | nKey, nFlags, o | If( nKey == VK_RETURN, GoNextCtrl( o ),) } } )
   
   ACTIVATE WINDOW oWndChild
   
return nil  

function GoNextCtrl( oCtrl )

   local nPos := AScan( oCtrl:oWnd:aControls, { | o | o:lFocused } )
   
   if nPos < Len( oCtrl:oWnd:aControls )
      PostMessage( oCtrl:oWnd:aControls[ nPos + 1 ]:hWnd, WM_SETFOCUS )
      oCtrl:oWnd:aControls[ nPos + 1 ]:SetFocus()
   else
      PostMessage( oCtrl:oWnd:aControls[ 1 ]:hWnd, WM_SETFOCUS )
      oCtrl:oWnd:aControls[ 1 ]:SetFocus()
   endif  
   
return nil  
 

Por lo visto el hecho de que no tenga título es suficiente para que Windows no reconozca que hay un siguiente control a donde "saltar" y hay que programarlo manualmente.
regards, saludos

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

Re: He actualizado a FiveWin 10.8 y nome Funciona la tecla ENTER

Postby colthop » Mon Sep 13, 2010 8:55 am

Hola Antonio:

La solución que me das es para que funcione el ENTER pero no para que funcionen los demas controles que han dejado de actuar como actuan cuando tienen el TITULO, por ejemplo el TAB los cursores de movimiento y no se que otros.

No existe un cambio que lo que haga sea volver a funcinar todos como funcionan cuando tioenen el TITULO.

Un saludo

Carlos
Colt Hop ED, S.L.
Carlos Blas Fernández Domínguez
Tlfo: 645847093
E-Mail: carlos@colthop.es

Nunca se termina de aprender, por eso necesito siempre ayuda.
colthop
 
Posts: 505
Joined: Sat Apr 22, 2006 9:09 am
Location: Madrid - España

Re: He actualizado a FiveWin 10.8 y nome Funciona la tecla ENTER

Postby colthop » Tue Sep 14, 2010 6:38 am

Hola Antonio:

Comentarte algo mas y es que el VSCROLL no lo hace correctamente solo pone una barra o se divisa algo de un pixel y no se puede utilizar.

En espera de tus noticias

Un saludo

Carlos
Colt Hop ED, S.L.
Carlos Blas Fernández Domínguez
Tlfo: 645847093
E-Mail: carlos@colthop.es

Nunca se termina de aprender, por eso necesito siempre ayuda.
colthop
 
Posts: 505
Joined: Sat Apr 22, 2006 9:09 am
Location: Madrid - España

Re: He actualizado a FiveWin 10.8 y nome Funciona la tecla ENTER

Postby Antonio Linares » Tue Sep 14, 2010 7:13 am

Carlos,

Por lo que se ve, hay que usar la ventana MDICHILD con título para que funcione correctamente el cambio de foco de un control a otro. Es una limitación propia de Windows.
regards, saludos

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

Re: He actualizado a FiveWin 10.8 y nome Funciona la tecla ENTER

Postby colthop » Tue Sep 14, 2010 9:30 am

Hola Antonio:

Entonces porque con la versión 10.7 si funciona. Si fuera una limitación de Windows tampoco funcionaría en esa versión.

Un saludo

Carlos
Colt Hop ED, S.L.
Carlos Blas Fernández Domínguez
Tlfo: 645847093
E-Mail: carlos@colthop.es

Nunca se termina de aprender, por eso necesito siempre ayuda.
colthop
 
Posts: 505
Joined: Sat Apr 22, 2006 9:09 am
Location: Madrid - España

Re: He actualizado a FiveWin 10.8 y nome Funciona la tecla ENTER

Postby Antonio Linares » Tue Sep 14, 2010 9:37 am

Carlos,

Eso no lo sabía, ó no me he fijado. Discúlpame :-)

Funciona bien con FWH 10.7 ? El mismo código ?
regards, saludos

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

Re: He actualizado a FiveWin 10.8 y nome Funciona la tecla ENTER

Postby colthop » Tue Sep 14, 2010 9:45 am

Hola Antonio:

Yo he actrualize el FiveWin en la versión 10.7 y me funcionaba todo menos lo de los colores en losbotones y despues actualize a la version 10.8 y fue cuando se ha corregido lo de los botones que ya no suman tantos GDI abiertos pero los controles en las ventanas sin TITULO no funcionan.

Salvo la ultima apreciación que te he dicho que el VSCROLL sale chiquitito en las dosversiones.

Un saludo

Carlos
Colt Hop ED, S.L.
Carlos Blas Fernández Domínguez
Tlfo: 645847093
E-Mail: carlos@colthop.es

Nunca se termina de aprender, por eso necesito siempre ayuda.
colthop
 
Posts: 505
Joined: Sat Apr 22, 2006 9:09 am
Location: Madrid - España

Next

Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 52 guests