Border en GET

Post Reply
User avatar
Biel EA6DD
Posts: 680
Joined: Tue Feb 14, 2006 9:48 am
Location: Mallorca
Contact:

Border en GET

Post by Biel EA6DD »

Hola Foro, q tal las fiestas de Pascua. Espero q bien.

Al tema, tengo un GET que dependindo de un valor boolenao, debe estar activo o no. Esto es facil usando WHEN o o con Disable(), pero en _ sigue visualizando el recuadro del GET. El GET esta definido desde recursos, veo que si fuera desde codigo existe NOBORDER, pero como puedo hacerlo para que cuando no se edite, tambien desaparezca el borde con el get definido en recursos. Evidentemente cuando deba editarse si quiero el borde, no me vale quitar el borde en el RC.

Gracias anticipadas.
Saludos desde Mallorca
Biel Maimó
http://bielsys.blogspot.com/
User avatar
Biel EA6DD
Posts: 680
Joined: Tue Feb 14, 2006 9:48 am
Location: Mallorca
Contact:

Post by Biel EA6DD »

A falta de respuestas, imagino que no puede hacerse. Entonces el planteamiento es el siguiente, el GET en el recurso sin caja. Y dibujar una caja alrededor del GET cuando proceda. Lo he intentado con WndBox(), pero no lo he conseguido, alguna idea.

Gracias.
Saludos desde Mallorca
Biel Maimó
http://bielsys.blogspot.com/
User avatar
astursoft
Posts: 139
Joined: Sun Nov 06, 2005 6:14 pm
Location: Asturias

Post by astursoft »

asi a primeras miraste dos get superpuestos uno con caja y otro sin ella y ocultar el que no se desea ? ( o tambien un get y un say ) .
Atención ten en cuenta que se apilan en recursos al reves de como lo ves en el programa , de tal manera que si pones en recursos delante el say , te quedará detras al ejecutar .
No se si sirve pero ....
Saludso.
Jose Luis Parajón
Asturias
User avatar
Biel EA6DD
Posts: 680
Joined: Tue Feb 14, 2006 9:48 am
Location: Mallorca
Contact:

Post by Biel EA6DD »

Gracias Jose Luis por la respuesta. Tus comentarios siempre son de ayuda.

Al final persevere con el tema de WndBox, y consegui que se comportase tal cual queria.

Es un get en el detalle de albaranes en el que se introduce el nº de lote para trazabilidat. Este Get depende de un buleano definido en un fichero de configuracion.
Al final lo hago así:

Code: Select all

 ...
   REDEFINE GET oGetLot VAR DetVtaTmp->Lote   ID 604 OF oDlg PICTURE "@K" VALID {|oGet|Ajusta(oGet)}

   IF Cfg->Lotes //<====
      REDEFINE SAY oSayLote PROMPT 'Lote' ID 4002 OF oDlg COLOR CLR_BLACK, CLR_WHITE
   ELSE
      oGetLot:Disable() //Podria hacerse en el WHEN del GET
   ENDIF
   //--
   ...
   //-
   ACTIVATE DIALOG oDlg ;
            ON INIT IF(!SipInfo().AND.Cfg->lSip,ShowKeyboard(),NIL) ;
            ON PAINT IF(Cfg->Lotes,WndBox(hDc,103,117,83,200),) //Dibujo box cuando Lotes .t.
...
Saludos desde Mallorca
Biel Maimó
http://bielsys.blogspot.com/
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Biel,

> Al final persevere con el tema de WndBox, y consegui que se comportase tal cual queria.

Bien. Otra solución sería cambiar el estilo del GET dinamicamente usando SetWindowLong( oGet:hWnd, GWL_STYLE, <estilo previo, excepto borde>).

El estilo previo se consigue llamando a GetWindowLong() de similar manera, y luego con un nAnd() seleccionar todo excepto el borde.
regards, saludos

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

Post by Antonio Linares »

Lo probastes ?
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Biel EA6DD
Posts: 680
Joined: Tue Feb 14, 2006 9:48 am
Location: Mallorca
Contact:

Post by Biel EA6DD »

Hola Antonio,
pues no, lo he dejado en tareas to do( to try), voy un poco retrasado, y ya me enrede mas de la cuenta. Cuando lo pruebe ya comentare en el hilo.
Saludos desde Mallorca
Biel Maimó
http://bielsys.blogspot.com/
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

ok :)
regards, saludos

Antonio Linares
www.fivetechsoft.com
Post Reply