SAY

Postby Antonio Linares » Sat Sep 27, 2008 6:25 am

William,

Si, esa sería una buena solución, pero primero necesitamos obtener más información (veamos que nos comenta Rossine) y mi duda es por que GetTextWidth() no devuelve el ancho correcto ?
regards, saludos

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

Postby wmormar » Sat Sep 27, 2008 6:32 am

Antonio,

quedaremos a la espera de rossine
William, Morales
Saludos

méxico.sureste
User avatar
wmormar
 
Posts: 1074
Joined: Fri Oct 07, 2005 10:41 pm
Location: México

Postby Rossine » Sat Sep 27, 2008 2:04 pm

Olá Antonio,

nWidth = GetTextWidth( 0, ::cCaption, If( ::oFont != nil, ::oFont:hFont,) ) + 20


Mesmo assim o texto continua sumindo na dialog :(

Obs: Somente depois de "oSay:refresh()" é que o texto fica certo, ou seja, ele é quebrado para a 2ª linha.

Mais alguma sugestão ?

Gracias,

Rossine.
Obrigado, Regards, Saludos

Rossine.

Harbour and Harbour++
Rossine
 
Posts: 344
Joined: Tue Oct 11, 2005 11:33 am

Postby Antonio Linares » Sat Sep 27, 2008 7:11 pm

Rossine,

Prueba a usar un valor mayor que 20, gracias
regards, saludos

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

Postby Rossine » Mon Sep 29, 2008 2:33 pm

Olá Antonio,

Quando uso valores positivos, não funciona, mas se uso valores negativos, (-20), quando é executado pela primeira vez , o texto não é quebrado, mas após o "refresh()", funciona corretamente.

O problema só acontece quando usso assim: "define dialog ...... TRANSPARENT"

Gracias,

Rossine.
Obrigado, Regards, Saludos

Rossine.

Harbour and Harbour++
Rossine
 
Posts: 344
Joined: Tue Oct 11, 2005 11:33 am

Postby Rossine » Thu Oct 16, 2008 12:56 pm

Olá Antonio,

Vendo este link : http://67.222.39.232/forums/viewtopic.php?t=13129

Comentei "fixsays()" em TDialog e "TRANSPARENT" funcionou :lol:

Assim:

Code: Select all  Expand view  RUN
METHOD Initiate( hWndFocus, hWnd ) CLASS TDialog

   local lFocus := .t., lResult, hCtrl, lEnd := .f., aRect

...

   if ::lTransparent
*      FixSays( ::hWnd )  <<- Tirei esta linha
      AEval( ::aControls,;
             { | o | If( ! Upper( o:ClassName() ) $ ;
             "TGET;TMULTIGET;TBTNBMP;TCOMBOBOX;TWBROWSE;TCBROWSE;TXBROWSE;TLISTBOX",;
                         o:lTransparent := .t.,) } )
   endif   
...



Isto pode ficar assim, ou "Fixsays" está com problema ?
Obrigado, Regards, Saludos

Rossine.

Harbour and Harbour++
Rossine
 
Posts: 344
Joined: Tue Oct 11, 2005 11:33 am

Postby Antonio Linares » Thu Oct 16, 2008 4:50 pm

Rossine,

FixSays() cambia el procedimiento de ventana para todos los SAYs, aunque no esten redefinidos.
regards, saludos

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

Previous

Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Google [Bot] and 47 guests