FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Easy Dialogs
Posts: 422
Joined: Mon Aug 17, 2009 12:18 PM
Easy Dialogs
Posted: Fri Nov 01, 2013 06:41 PM

Hola!,

Muchos clientes nos piden poder personalizar los diálogos: cambiar de lugar los campos, modificar los textos de los says...

Parece que ese producto hace eso, pêro Timm lleva anos desaparecido. Alguien ló usa?.

Muchas gracias por lá ayuda.

Saludos,



Eduardo
Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: Easy Dialogs
Posted: Fri Nov 01, 2013 07:32 PM
Hola, si utiliza los recursos, simplemente cambiar el tamaño de sus pantallas para formatear el tamaño de la resolución de vídeo.

por ejemplo: Resolución: 1024 x 760 el tamaño de su pantalla debria ser: 0-678-15-452 - Resource Workshop.

Crea pantallas para cada tipo de resolución...

en tu programa:

Code (fw): Select all Collapse
IF RESOLUCION = 800X600
   // pantalla con el tamaño de 800x60
   DEFINE DIALOG...RESOURCE "DLG_800_600"
ELSEIF RESOLUCION = 1024X760
   DEFINE DIALOG...RESOURCE "DLG_1024_760"
ELSIF...

ELSEIF...

ELSEIF..

ENDIF
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 422
Joined: Mon Aug 17, 2009 12:18 PM
Re: Easy Dialogs
Posted: Fri Nov 01, 2013 09:17 PM

Obrigado, pêro el cliente quiere cambiar los says, lá posicion de los controles.

Seria muy interesante esta funcionalidad lá verdad.

Saludos,



Eduardo
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Easy Dialogs
Posted: Sat Nov 02, 2013 11:18 AM

Eduardo,

Si a cualquier control de FWH le cambias la propiedad lDesign:

oControl:lDesign := .T.

entonces el usuario puede moverlo y redimensionarlo, etc. Revisa el ejemplo FWH\samples\design.prg

Es tan sencillo como que cambies la DATA lDesign de los controles que quieras permitirle al usuario modificar :-)

Luego faltaría guardar las nuevas propiedades en la forma en que te sea más conveniente

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 422
Joined: Mon Aug 17, 2009 12:18 PM
Re: Easy Dialogs
Posted: Sat Nov 02, 2013 05:35 PM

Antonio,

Muchas gracias. Y como puedo hacer que el usuário cambie el nombre de los says?. És que quieren poder cambiar su nombre para personalizar los campos.

Muchas gracias

Saludos,



Eduardo
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Easy Dialogs
Posted: Sat Nov 02, 2013 08:36 PM

Eduardo,

Prueba y revisa el ejemplo que te he comentado (samples\design.prg) y pulsa el botón derecho del ratón sobre un SAY u otro control :-)

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 422
Joined: Mon Aug 17, 2009 12:18 PM
Re: Easy Dialogs
Posted: Sun Nov 03, 2013 05:15 PM
Antonio,

Lo he probado así, con samples\testget6.prg, y no se puede editar nada:

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

function Main()

   local oDlg, oFind, oBtn
   local cFind := space( 100 )
   local nDir  := 1
   local lCase := .t., lWord := .f.

   DEFINE DIALOG oDlg RESOURCE "Test"

   REDEFINE GET oFind VAR cFind ID 101 OF oDlg

   oFind:bPostKey := { |x,y| if( empty( y ), oBtn:Disable(), oBtn:Enable() ) }

   REDEFINE RADIO nDir ID 102, 103 OF oDlg

   REDEFINE CHECKBOX lCase ID 104 OF oDlg
   REDEFINE CHECKBOX lWord ID 105 OF oDlg

   REDEFINE BUTTON oBtn ID 201 ACTION MsgInfo( "Ok" )

   REDEFINE BUTTON ID 202 ACTION oDlg:End()

   oDlg:bStart := { || oBtn:Disable() }

   ACTIVATE DIALOG oDlg CENTERED ;
           ON INIT (oDlg:lDesign := .T., oBtn:lDesign := .T. )



¿Qué hago mal por favor?.
Saludos,



Eduardo
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Easy Dialogs
Posted: Sun Nov 03, 2013 07:57 PM
Eduardo,

Pruébalo así:

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

function Main()

   local oDlg, oFind, oBtn
   local cFind := space( 100 )
   local nDir  := 1
   local lCase := .t., lWord := .f.

   DEFINE DIALOG oDlg RESOURCE "Test"

   REDEFINE GET oFind VAR cFind ID 101 OF oDlg

   oFind:lDrag := .T.

   REDEFINE RADIO nDir ID 102, 103 OF oDlg

   REDEFINE CHECKBOX lCase ID 104 OF oDlg
   REDEFINE CHECKBOX lWord ID 105 OF oDlg

   REDEFINE BUTTON oBtn ID 201 ACTION MsgInfo( "Ok" )

   oBtn:lDrag = .T.
   oBtn:bGotFocus = { || oBtn:ShowDots() }

   REDEFINE BUTTON ID 202 ACTION oDlg:End()

   ACTIVATE DIALOG oDlg CENTERED
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 422
Joined: Mon Aug 17, 2009 12:18 PM
Re: Easy Dialogs
Posted: Mon Nov 04, 2013 07:55 AM

Antonio,

Yo lo que quiero fundamentalmente es poder editar los SAYS de un diálogo contenido en un .rc y luego volver a recuperarlos.

Con tus cambios sigo sin poder editar los says, que es lo que necesito.

Muchas gracias.

Saludos,



Eduardo
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Easy Dialogs
Posted: Mon Nov 04, 2013 10:36 AM

Eduardo,

Con los SAYs basicamente tienes que hacer dos cosas:

oSay:lWantClick = .T. // para que procesen los clicks del ratón
oSay:lDrag = .T.

El resto es como hacemos en design.prg:

oSay:bRClicked = { | nRow, nCol | EditControl( nRow, nCol, oSay ) }

y desde EditControl() ya puedes modificar los SAYs

regards, saludos

Antonio Linares
www.fivetechsoft.com

Continue the discussion