FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para CA-Clipper saltar gets y controles en fivewin
Posts: 162
Joined: Tue Feb 03, 2009 10:08 PM
saltar gets y controles en fivewin
Posted: Thu Feb 26, 2009 06:22 PM

Hola compañeros del foro....

Tengo un problemilla.... estoy con un dialogo que tiene cerca de 30 controles, entre gets, listbox, combobox, buttons, etc.....

como hago para que cuando este en el 3er get, ( el cual lee un código y con una funcion retorna el nombre del producto, el stock actual y varios precios de venta, etc), y dependiendo del resultado pase al 10 get...

e intentado con:

oGetxxx:setfocus()

__KeyBoard ( CHR (9) ) && el tabulador

oDlgxxx:GoPrevCtrl ( hctrl ) && el hctrl no se como se define, alguien puede enviarme un ejemplo

oDlgxxx:GoNextCtrl ( hctrl ) && lo mismo no se como se define

si alquien puede ayudarme con gusto les agradeceria...

Cordial Saludo

J. Ernesto Pinto Q.

J. Ernesto Pinto Q.
Fwh_x64 2501, BCC++_x64 7_70 , Harbour 3.20, LopeEdit 5.8
jepsys@hotmail.com, jepsys@gmail.com

Posts: 34
Joined: Tue Dec 30, 2008 07:22 PM
Re: saltar gets y controles en fivewin
Posted: Thu Feb 26, 2009 06:48 PM

Hola,

yo lo hago así:

oFldr:aDialogs[1]:aControls[6]:SetFocus()

evidentemente esto es desde folder.
Realizas la búsqueda, pones los resultados en los campos necesarios y posterioremente le das el focus al control que quieras, en este caso sera tú "get".

Saludos y espero te sirva !

Pedro

FWH9.06 / XMate 1.15 / Borland C++ 5.5.1 / xHarbour build 1.1.0 Intl. (SimpLex) (Rev. 6195)
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: saltar gets y controles en fivewin
Posted: Thu Feb 26, 2009 07:37 PM

J. Ernesto,

Puedes hacerlo asi, definiendo el dato oJump:

oGet3:oJump := oGet10

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 162
Joined: Tue Feb 03, 2009 10:08 PM
Re: saltar gets y controles en fivewin
Posted: Sun Mar 01, 2009 07:29 PM

Gracias don Antonio Lionares

A ver otra ayuda.... hasta ahora estoy migrando desde clipper al entorno visual en 32 bits..... por eso mi falta de conocimiento en estos pasos... como en:

oGet3:oJump := oGet10

Yo tengo algo de codigo asi:

@x,y GET opsCodept VAR psCodePT Pict '@s14' Valid (ValidaCodigo(), .T.)

@x,y GET opn54QTY VAR pn54Qty Pict '999' Valid (ValidarCantidad(), .T.)

@x,y Listbox........
......
......

Lo que quiero es si la validacion de la cantidad es verdadera que vuelva a leer el c{odigo del producto, con opsCodept:setfocus el control pasa al del listbox....

podria aorientarme como implemento el oJump?????

Mil Gracias...

J. Ernesto Pinto Q.
Fwh_x64 2501, BCC++_x64 7_70 , Harbour 3.20, LopeEdit 5.8
jepsys@hotmail.com, jepsys@gmail.com

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: saltar gets y controles en fivewin
Posted: Wed Mar 04, 2009 07:20 PM
J. Ernesto,

Tienes que hacer la asignacion desde la funcion ValidarCantidad()

Code (fw): Select all Collapse
@x,y GET opsCodept VAR psCodePT Pict '@s14' Valid (ValidaCodigo(), .T.)

@x,y GET opn54QTY VAR pn54Qty Pict '999' Valid (ValidarCantidad( opn54QTY, opsCodept ), .T.)

...

function ValidarCantidad( oGet2, oGet1 )

   ... tu codigo

   oGet2:oJump = oGet1

return .T.
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 162
Joined: Tue Feb 03, 2009 10:08 PM
Re: saltar gets y controles en fivewin
Posted: Wed Mar 04, 2009 10:24 PM

Antonio... Mil gracias

el ojump ya funciono, mi pregunta ahora, es...

1- por que el oDestino:setfocus() no funciona dentro de un valid del control get?, o el paso al control previo

2- dentro de un Listbox como se implementa la misma situacion, es decir saltar el foco a otro control?

3- esta clase de metodos donde tiene algo de literatura?

4- Por otro lado hay unas funciones para conocer el tipo de dispostivos o Drives de que dispone un computador:

a- En algunos casos veo que devuelve un numero negativo, esto es valido?

b- cuando no encuentra un dispostivo que esta dentro de la matriz aDrives(), supongamos  hay una unidad de 3½", pero no tiene un diskette, mas sin   embargo devuelve un numero, es cierto o falso el resultado?

c- Si no es un Diskette, ni un CDRom, deveria ser un Hard Disk, y entonces como se sabe que es una unidad USB (pendrive)?

d- Como se implementa la combinacion de teclas para asignarselas a una funcion en especial, por ejemplo Control + A, o Shift + F1, caso similar para los acceleradores de un menuitem?

e- y aun me quedan otras inquietudes, estoy migrando mis aplicaciones desde clipper 5.3b + Blinker 7.0 + LLIB, estoy ovbiando el paso al modo comsola en 32 bist, yendo directamenta al modo visual en 32 Bits.....

Un cordial saludo,,,

PD, seguire con otras dudas.....

J. Ernesto Pinto Q.
Fwh_x64 2501, BCC++_x64 7_70 , Harbour 3.20, LopeEdit 5.8
jepsys@hotmail.com, jepsys@gmail.com

Posts: 111
Joined: Thu Jan 19, 2006 11:47 PM
Re: saltar gets y controles en fivewin
Posted: Thu Mar 05, 2009 11:33 AM

Ernesto:

Como que somos cachacos, el lo que te pueda ayudar con muchos gusto. De pronto hasta vecinos resultamos siendo y nos tomamos un delicioso tinto tertuliando. Que grato seria compartir con un colega Clipperiano, no soy muy experto pero de pronto nos podemos ayudar.

Mi Messenger es hymplus.@hotmail.com

Saludos,

Edgar Mauricio Arévalo Mogollón.
Bogotá DC. Colombia
FWH FTDN, xHarbour 1.2.1, Pelles C, Fivedit, Visual Studio Code, Borland 7.30, Mysql, Dbfs
http://www.hymplus.com http://www.hymlyma.com
Tratando de retomar la programación....
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: saltar gets y controles en fivewin
Posted: Thu Mar 05, 2009 11:46 AM

J. Ernesto,

Eso parece un examen en vez de una pregunta de soporte técnico :-)

Por que no vamos poquito a poco ? :-)

Una o dos preguntas por mensaje, gracias

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: saltar gets y controles en fivewin
Posted: Thu Mar 05, 2009 11:51 AM

J. Ernesto,

> 1- por que el oDestino:setfocus() no funciona dentro de un valid del control get?, o el paso al control previo

Porque Windows tiene su propia secuencia de perdida de foco y ganancia de foco, de un control a otro, y no puede ser interrumpida. Hay que esperar a que Windows termine de hacer su trabajo y entonces FiveWin se encarga de cambiar el foco.

> 2- dentro de un Listbox como se implementa la misma situacion, es decir saltar el foco a otro control?

Exactamente igual :-) En vez de usar oGet2:oJump usas oListBox:oJump.

> 3- esta clase de metodos donde tiene algo de literatura?

El dato oJump pertenece a la Clase TControl y está documentado en la clase TControl. Por eso puede ser usado con cualquier tipo de control.

Es preferible el aprendizaje que estas haciendo, a través de la práctica. Si a priori intentases aprender todo lo que se puede hacer en Windows, seria imposible asimilarlo todo, y te confundirías en vez de afianzar los conceptos básicos :-)

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 162
Joined: Tue Feb 03, 2009 10:08 PM
Parpadeo de Colores
Posted: Thu Mar 19, 2009 12:44 AM

Don Antonio, de nuevo por aca molestando

Una pregunta...

1- Como hago para colocar un control con colores que parpadeen, al estilo del viejo clipper?????

J. Ernesto Pinto Q.
Fwh_x64 2501, BCC++_x64 7_70 , Harbour 3.20, LopeEdit 5.8
jepsys@hotmail.com, jepsys@gmail.com

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: saltar gets y controles en fivewin
Posted: Thu Mar 19, 2009 08:11 PM

J. Ernesto,

Tienes que usar un TIMER que cambie el color cada cierto tiempo.

Puedes revisar FWH\samples\TestTime.prg para ver como se usan los TIMERs.

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: saltar gets y controles en fivewin
Posted: Thu Mar 19, 2009 08:18 PM
Aqui tienes un ejemplo funcionando:
Code (fw): Select all Collapse
#include "FiveWin.ch"

static oWnd, oSay, oTimer

function Main()

   DEFINE WINDOW oWnd FROM 3, 3 TO 20, 50 ;
      TITLE "Colores parpadeando"

   @ 2, 2 SAY oSay PROMPT "Hola Mundo!" COLOR "W+/B"

   ACTIVATE WINDOW oWnd ;
      ON INIT CreaTimer()

   oTimer:End()

return nil

function CreaTimer()

   static lOnOff := .F.

   DEFINE TIMER oTimer INTERVAL 500 ;
      ACTION ( lOnOff := ! lOnOff, oSay:SetColor( If( lOnOff, "W+/B", "GR+/G" ) ), oSay:Refresh() )

   ACTIVATE TIMER oTimer

return nil
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 162
Joined: Tue Feb 03, 2009 10:08 PM
Re: saltar gets y controles en fivewin
Posted: Sat Mar 28, 2009 09:34 PM

Don Antonio Muchas Gracias, listo lo del color parpadeando, ahora otras dos preguntas:

1- Necesito combinar teclas al estilo del clipper, es decir como Crtl + 'T', shift+f1, como lo implemento en un set key o en un menuitem....
2- Ccom,o averiguo el serial de una PenDrive (usb), ya tenemos si existe un Diskette, o una unidad de CD,,,,, o en la matriz aDrivers que otra informacion podemos hallar sobre las unidades?

Mil Gracias

J. Ernesto Pinto Q.
Fwh_x64 2501, BCC++_x64 7_70 , Harbour 3.20, LopeEdit 5.8
jepsys@hotmail.com, jepsys@gmail.com

Posts: 195
Joined: Fri Jan 23, 2009 02:50 AM
Re: saltar gets y controles en fivewin
Posted: Mon Mar 30, 2009 02:46 PM

Ernesto

Mira en samples Testhard.prg

Funciona muy bien para lo que tu quieres

Espero te funciones

Jairo

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: saltar gets y controles en fivewin
Posted: Thu Apr 09, 2009 05:46 PM

J. Ernesto,

> Necesito combinar teclas al estilo del clipper, es decir como Crtl + 'T', shift+f1, como lo implemento en un set key o en un menuitem....

Revisa FWH\samples\TestMenu.prg

> Como averiguo el serial de una PenDrive (usb)

Revisa FWH\samples\protect.prg

regards, saludos

Antonio Linares
www.fivetechsoft.com