Page 1 of 1

Static que no funciona en Dialogo con cláusula TRANSPARENT

Posted: Fri May 06, 2011 8:56 am
by Carlos Mora
Tengo un diálogo definido en recursos (un .rc) editado con Pelles. En la parte inferior uso un rectángulo blanco para enmarcar los botones, declarado como un static. Si uso el diálogo normal, sin cláusulas adicionales y usando los colores por defecto funciona todo bien, pero si le cambio el color de fondo y uso la cláusula TRANSPARENT del diálogo ya no me lo muestra. Si no uso la clausula TRANSPARENT los says no muestran correctamente el color de fondo del diálogo.
Image

El código prg

Code: Select all

   DEFINE DIALOG oDlg RESOURCE "CLIENTES_FORM" HELPID 0 COLOR CLR_TEXTO, CLR_FONDO TRANSPARENT
      oDlg:lHelpIcon := .f.

      REDEFINE GET oRB:Codigo        ID 101 OF oDlg VALID NoExiste( oRB:Codigo, 'Clientes', 'Codigo' )
      REDEFINE CHECKBOX oRB:Exterior ID 113 OF oDlg
      REDEFINE GET oRB:Cif           ID 102 OF oDlg VALID CIFValido( oRB:CIF ) .Or. oRB:Exterior
      REDEFINE GET oRB:Empresa       ID 103 OF oDlg VALID !Empty( oRB:Empresa )
      REDEFINE GET oRB:Direccion     ID 104 OF oDlg
      REDEFINE GET oRB:Localidad     ID 105 OF oDlg
      REDEFINE GET oRB:Postal        ID 106 OF oDlg
      REDEFINE GET oRB:Capital       ID 107 OF oDlg
      REDEFINE GET oRB:Contacto      ID 117 OF oDlg
      REDEFINE GET oRB:Telefono      ID 108 OF oDlg
      REDEFINE GET oRB:Telefono2     ID 109 OF oDlg
      REDEFINE GET oRB:Fax           ID 110 OF oDlg
      REDEFINE GET oRB:Movil         ID 111 OF oDlg
      REDEFINE GET oRB:EMail         ID 112 OF oDlg
      REDEFINE CHECKBOX oRB:Activo   ID 116 OF oDlg
      REDEFINE CHECKBOX oRB:Excl347  ID 118 OF oDlg
      REDEFINE GET oRB:CtaClte       ID 114 OF oDlg
      REDEFINE GET oRB:CtaPago       ID 115 OF oDlg

      REDEFINE BUTTON oBtn ID 201 OF oDlg ACTION (oDlg:End(), lOk:= .T.)
      REDEFINE BUTTON oBtn ID 202 OF oDlg ACTION oDlg:End()

   ACTIVATE DIALOG oDlg CENTER

 
y el rc

Code: Select all

CLIENTES_FORM DIALOGEX DISCARDABLE 6, 18, 259, 236
STYLE WS_POPUP|DS_MODALFRAME|DS_3DLOOK|WS_CAPTION|WS_SYSMENU|WS_VISIBLE
CAPTION "Clientes"
FONT 8, "MS Shell Dlg", 0, 0, 1
{
  CONTROL "", 4001, "Static", SS_WHITERECT|SS_CENTERIMAGE, 0, 205, 259, 31
  CONTROL "Código", 50, "Static", WS_GROUP, 12, 10, 44, 8, WS_EX_TRANSPARENT
  CONTROL "", 101, "Edit", ES_RIGHT|WS_BORDER|WS_TABSTOP, 61, 8, 36, 12
  CONTROL "Exterior", 113, "Button", BS_AUTOCHECKBOX|WS_TABSTOP, 103, 9, 37, 10
  CONTROL "CIF/NIF", 51, "Static", WS_GROUP, 148, 10, 31, 8
  CONTROL "", 102, "Edit", WS_BORDER|WS_TABSTOP, 181, 8, 70, 12
  CONTROL "Nombre", 52, "Static", WS_GROUP, 12, 25, 44, 8, WS_EX_TRANSPARENT
  CONTROL "", 103, "Edit", WS_BORDER|WS_TABSTOP, 61, 23, 190, 12
  CONTROL "Domicilio", 53, "Static", WS_GROUP, 12, 40, 44, 8
  CONTROL "", 104, "Edit", WS_BORDER|WS_TABSTOP, 61, 38, 190, 12
  CONTROL "Localidad", 54, "Static", WS_GROUP, 12, 55, 44, 8
  CONTROL "", 105, "Edit", WS_BORDER|WS_TABSTOP, 61, 53, 190, 12
  CONTROL "Código postal", 55, "Static", WS_GROUP, 12, 71, 44, 8
  CONTROL "", 106, "Edit", ES_RIGHT|WS_BORDER|WS_TABSTOP, 61, 69, 36, 12
  CONTROL "Provincia", 56, "Static", WS_GROUP, 106, 71, 36, 8
  CONTROL "", 107, "Edit", WS_BORDER|WS_TABSTOP, 142, 69, 109, 12
  CONTROL "Contacto", 64, "Static", WS_GROUP, 12, 87, 38, 8
  CONTROL "", 117, "Edit", ES_AUTOHSCROLL|ES_WANTRETURN|WS_BORDER|WS_TABSTOP, 61, 85, 190, 12
  CONTROL "Teléfono 1", 57, "Static", WS_GROUP, 12, 102, 38, 8
  CONTROL "", 108, "Edit", ES_AUTOHSCROLL|ES_WANTRETURN|WS_BORDER|WS_TABSTOP, 61, 100, 190, 12
  CONTROL "Teléfono 2", 58, "Static", WS_GROUP, 12, 117, 38, 8
  CONTROL "", 109, "Edit", ES_AUTOHSCROLL|ES_WANTRETURN|WS_BORDER|WS_TABSTOP, 61, 115, 190, 12
  CONTROL "Fax", 59, "Static", WS_GROUP, 12, 132, 38, 8
  CONTROL "", 110, "Edit", ES_WANTRETURN|WS_BORDER|WS_TABSTOP, 61, 130, 75, 12
  CONTROL "Móvil", 60, "Static", WS_GROUP, 152, 132, 21, 8
  CONTROL "", 111, "Edit", ES_WANTRETURN|WS_BORDER|WS_TABSTOP, 176, 130, 75, 12
  CONTROL "correo-e", 61, "Static", WS_GROUP, 12, 147, 38, 8
  CONTROL "", 112, "Edit", WS_BORDER|WS_TABSTOP, 61, 145, 190, 12
  CONTROL "Activo", 116, "Button", BS_CHECKBOX|WS_TABSTOP, 62, 162, 40, 10, WS_EX_TRANSPARENT
  CONTROL "Cuenta cliente", 62, "Static", WS_GROUP, 12, 187, 51, 8
  CONTROL "", 114, "Edit", ES_WANTRETURN|WS_BORDER|WS_TABSTOP, 61, 185, 64, 12
  CONTROL "Cuenta cobros", 63, "Static", WS_GROUP, 134, 187, 50, 8
  CONTROL "", 115, "Edit", ES_WANTRETURN|WS_BORDER|WS_TABSTOP, 187, 185, 64, 12
/// ESTA ES
  CONTROL "", 4002, "Static", SS_ETCHEDHORZ|SS_CENTERIMAGE|WS_BORDER, 12, 177, 240, 1
/// ESTA ES
  CONTROL "&Aceptar", 201, "Button", WS_TABSTOP, 153, 213, 45, 15
  CONTROL "&Cancelar", 202, "Button", WS_TABSTOP, 206, 213, 45, 15
  CONTROL "Excluir del 347", 118, "Button", BS_CHECKBOX|WS_TABSTOP, 145, 162, 60, 10, WS_EX_TRANSPARENT
}
 
y el problema en vivo:

Image

Aparentemente el problema está en la función FIXSAYS, que altera los STATICS para que no pinten el fondo, el problema es que tambien altera los STATICs que no son SAYS. Estoy adivinando, el código no está disponible en la version FWH 11.04.

Re: Static que no funciona en Dialogo con cláusula TRANSPARENT

Posted: Mon May 09, 2011 7:26 am
by Carlos Mora
Antonio,

podrías mirarlo? Tal vez tocando algo en la FixSays se puede resolver. Por cierto, estoy compilado con Harbour, FWH 11.04 y BCC, con recursos en un rc creado con Pelles C.

Re: Static que no funciona en Dialogo con cláusula TRANSPARENT

Posted: Tue May 10, 2011 2:23 pm
by Carlos Mora
Bump

Re: Static que no funciona en Dialogo con cláusula TRANSPARENT

Posted: Thu May 12, 2011 8:37 pm
by JARO
Carlos yo tengo el mismo problema desde cuando salió la claúsula Transparent desaparecieron todos estos controles.
BUMP

Re: Static que no funciona en Dialogo con cláusula TRANSPARENT

Posted: Wed May 18, 2011 3:19 pm
by Carlos Mora
Antonio,
no te olvides de mi

Re: Static que no funciona en Dialogo con cláusula TRANSPARENT

Posted: Fri May 20, 2011 10:30 am
by Daniel Garcia-Gil
Carlos

Si contara con un ejemplo que yo pueda contruir podria intentar ayudarte, el ejemplo que has expuesto no me es muy util

Gracias

Re: Static que no funciona en Dialogo con cláusula TRANSPARENT

Posted: Fri May 20, 2011 2:09 pm
by Antonio Linares
Carlos,

Creo que lo he arreglado, aqui tienes brushes.obj, por favor enlázalo en tu aplicación y compruébalo :-)

http://www.mediafire.com/download.php?sj8uqc7cabmqmf4

Re: Static que no funciona en Dialogo con cláusula TRANSPARENT

Posted: Tue May 31, 2011 2:59 pm
by Carlos Mora
Hola Antonio,

perdona la tardanza en responder, estaba liado con otro proyecto que se requería con urgencia.
Lamentablemente no me ha funcionado, he realizado una prueba autocontenida tal como me indicó daniel, y te adjunto el resultado completo, con el bat de compilación, exe, recursos y demás. Solo hay que ajustar los paths para recompilar.

http://www.ziddu.com/download/15193386/ ... c.zip.html

Una pregunta: No he visto las descargas de la FW1105 para MinGW ¿Ha sido suspendido el soporte? Cuando el año pasado ví que habias sacado una version para MinGW me gustó la idea de cambiar a un compilador vivo, con soporte y con tantas librerias. Y siendo gcc... hasta da ganas de hacer un crosscompiling y enlazar con winelib ;)

Un saludo

Re: Static que no funciona en Dialogo con cláusula TRANSPARENT

Posted: Wed Jun 15, 2011 4:14 pm
by Carlos Mora
Alguna novedad?