Para Antonio - Como rolar header e Footer de THEADER

Rossine
Posts: 343
Joined: Tue Oct 11, 2005 11:33 am

Para Antonio - Como rolar header e Footer de THEADER

Post by Rossine »

Olá Antonio,

Estou a fazer algumas mudanças na classe WBROWSE e eu gostaria de saber se você poderia me dar uma dica de como fazer o Header e Footer rolar na tela quando eu clicar no objeto SCROLL.

Eu estou usando a classe THEADER de FWH.

Desde já agradeço qualquer ajuda :-)

Obrigado,

Rossine.

Image
User avatar
Silvio
Posts: 3107
Joined: Fri Oct 07, 2005 6:28 pm
Location: Teramo,Italy

Post by Silvio »

Rossine,
How have create light header to wbrowse ?

Regards
Best Regards, Saludos

Falconi Silvio
Francisco Horta
Posts: 845
Joined: Sun Oct 09, 2005 5:36 pm
Location: la laguna, mexico.

Post by Francisco Horta »

Rossine, como hiciste para poder juntar theader y wbrowse, puedes poner el ejemplo? si modificaste la clase me la pudieras enviar?
saludos
Pako
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Rossine,

Prueba a cambiar la DATA nLeft del header:

oHeader:nLeft -= ...
regards, saludos

Antonio Linares
www.fivetechsoft.com
Rossine
Posts: 343
Joined: Tue Oct 11, 2005 11:33 am

Post by Rossine »

Olá Antonio,

nLeft já é igual a 0 se se eu subtrair está ficando negativo e o Header/Footer está sumindo da tela :(

Pako e Silvio, assim que eu conseguir fazer funcionar postarei aqui um exemplo ok ? :D

Antonio, alguma outra idéia ?

Obrigado,

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

Post by Antonio Linares »

Rossine,

> nLeft já é igual a 0 se se eu subtrair está ficando negativo e o Header/Footer está sumindo da tela

No entiendo lo que dices. Puedes decirlo en inglés ? O explicarlo un poco más ?
regards, saludos

Antonio Linares
www.fivetechsoft.com
Rossine
Posts: 343
Joined: Tue Oct 11, 2005 11:33 am

Post by Rossine »

Olá Antonio,

Excuse I am using me a translator :wink:

nLeft already is like 0 itself be subtracted I is stayed negative film strip and the Header/Footer is disappearing of the screen

See this image:

Image

Talvez isto seria a solução:

Code: Select all

The HD_LAYOUT structure contains information used to set the size and position of a header control. 

typedef struct _HD_LAYOUT {  // hdl  
    RECT FAR*      prc;  
    WINDOWPOS FAR* pwpos; 
} HD_LAYOUT; 
 

Members

prc

Pointer to a RECT structure that contains the coordinates of a rectangle that the header control is to occupy.

pwpos

Pointer to a WINDOWPOS structure that receives information about the appropriate size and position of the header control.

 

Remarks

This structure is used with the HDM_LAYOUT message.
Se for isto a solução, como faço para inseri-lo em theaders.c ?

Gracias,

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

Post by Antonio Linares »

Rossine,

Please add this code to theaders.c:

Code: Select all

#ifdef __HARBOUR__
   CLIPPER HEADERLAYOUT( PARAMS ) // hWnd [, aRect] --> aInfo
#else   
   CLIPPER HEADERLAYO( PARAMS ) // UT()
#endif
{
   RECT prc;
   WINDOWPOS pwpos;
   HDLAYOUT hdlayout;

   hdlayout.prc = &prc;
   hdlayout.pwpos = &pwpos;

   if( PCOUNT() > 1 )
   { 
      hdlayout.prc->left   = _parnl( 2, 1 );
      hdlayout.prc->top    = _parnl( 2, 2 );
      hdlayout.prc->right  = _parnl( 2, 3 );
      hdlayout.prc->bottom = _parnl( 2, 4 );
   }   
      	
   SendMessage( ( HWND ) _parnl( 1 ), ( LONG ) HDM_LAYOUT, 0, ( LPARAM ) &hdlayout );
   
   _reta( 7 );
   _stornl( ( LONG ) hdlayout.pwpos->hwnd, -1, 1 );
   _stornl( ( LONG ) hdlayout.pwpos->hwndInsertAfter, -1, 2 );
   _storni( hdlayout.pwpos->x, -1, 3 );
   _storni( hdlayout.pwpos->y, -1, 4 );
   _storni( hdlayout.pwpos->cx, -1, 5 ); 	   
   _storni( hdlayout.pwpos->cy, -1, 6 );
   _stornl( hdlayout.pwpos->flags, -1, 7 );
}    	   
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 »

Rossine,

Also, this information may be usefull:
>>
If you want to use the HDM_LAYOUT message to set the initial size and position of a header window, you should set the initial visibility state of the window so that it is hidden (by specifying the HDS_HIDDEN style). Once you have created the window and used the HDM_LAYOUT message to get the size and position values, you can call the SetWindowPos function to set the new size, position, and visibility state.
>>
regards, saludos

Antonio Linares
www.fivetechsoft.com
Rossine
Posts: 343
Joined: Tue Oct 11, 2005 11:33 am

Post by Rossine »

Olá Antonio,

Funcionou 1000% :D :D :D :D :D

Veja o que tive que fazer:

Code: Select all


**************
function ROLAR( cLado )
**************

if cLado = "D"  && Rolar para direita
   nPos += 10
else                && Senão para a esquerda
   nPos -= 10
endif

SetWindowPos( oHeader:hWnd, 0, 40, nPos, 1000, 40, SWP_FRAMECHANGED )

return NIL

Veja:

Image

Mil Gracias Maestro :lol:

Saludos,

Rossine.
User avatar
Taiwan
Posts: 218
Joined: Fri Oct 07, 2005 1:55 am
Location: Taipei, Taiwan
Contact:

Post by Taiwan »

Hi Rossine,

Very nice.
Could you share this code for us?

Regards,

Richard
Rossine
Posts: 343
Joined: Tue Oct 11, 2005 11:33 am

Post by Rossine »

Olá Richard,

Code: Select all

SET PORTUGUESE ON

Assim que eu tiver concluído as mudanças, irei compartilhar com todos os interessados ok ?  :D 

Abraços,

Rossine.

Code: Select all

SET ENGLISH ON

Like this that I will have concluded the changes, I am going to share with everybody them interested ok?   :D 

With best regards,

Rossine.
Francisco Horta
Posts: 845
Joined: Sun Oct 09, 2005 5:36 pm
Location: la laguna, mexico.

Post by Francisco Horta »

Hola rossine,
Pudieras compartir la clase modificada para usarla con wbrowse y el ejemplo, creo que a muchos nos vendria de perlas... :D
por cierto, felicidades que buen trabajo...
ssalu2
pako
Rossine
Posts: 343
Joined: Tue Oct 11, 2005 11:33 am

Post by Rossine »

Ola Pako,

Assim que possível as modificações estiverem prontas postarei o código fonte para todos ok ?

Vejam como está ficando :wink:

Image


Abraços a todos,

Rossine.
User avatar
Taiwan
Posts: 218
Joined: Fri Oct 07, 2005 1:55 am
Location: Taipei, Taiwan
Contact:

Post by Taiwan »

Hola rossine,

Thank you so much.
Power user for us.

Regards,

Richard
Post Reply