Para Antonio - Como rolar header e Footer de THEADER

Para Antonio - Como rolar header e Footer de THEADER

Postby Rossine » Thu Mar 23, 2006 9:36 pm

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
Rossine
 
Posts: 344
Joined: Tue Oct 11, 2005 11:33 am

Postby Silvio » Thu Mar 23, 2006 11:50 pm

Rossine,
How have create light header to wbrowse ?

Regards
Best Regards, Saludos

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

Postby Francisco Horta » Fri Mar 24, 2006 1:10 am

Rossine, como hiciste para poder juntar theader y wbrowse, puedes poner el ejemplo? si modificaste la clase me la pudieras enviar?
saludos
Pako
Francisco Horta
 
Posts: 845
Joined: Sun Oct 09, 2005 5:36 pm
Location: la laguna, mexico.

Postby Antonio Linares » Fri Mar 24, 2006 9:10 am

Rossine,

Prueba a cambiar la DATA nLeft del header:

oHeader:nLeft -= ...
regards, saludos

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

Postby Rossine » Fri Mar 24, 2006 11:05 am

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.
Rossine
 
Posts: 344
Joined: Tue Oct 11, 2005 11:33 am

Postby Antonio Linares » Fri Mar 24, 2006 12:25 pm

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
User avatar
Antonio Linares
Site Admin
 
Posts: 42159
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby Rossine » Fri Mar 24, 2006 12:56 pm

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  Expand view  RUN
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.
Rossine
 
Posts: 344
Joined: Tue Oct 11, 2005 11:33 am

Postby Antonio Linares » Sat Mar 25, 2006 7:56 am

Rossine,

Please add this code to theaders.c:
Code: Select all  Expand view  RUN
#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: 42159
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby Antonio Linares » Sat Mar 25, 2006 7:59 am

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
User avatar
Antonio Linares
Site Admin
 
Posts: 42159
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby Rossine » Sat Mar 25, 2006 3:36 pm

Olá Antonio,

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

Veja o que tive que fazer:

Code: Select all  Expand view  RUN

**************
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.
Rossine
 
Posts: 344
Joined: Tue Oct 11, 2005 11:33 am

Postby Taiwan » Sat Mar 25, 2006 4:36 pm

Hi Rossine,

Very nice.
Could you share this code for us?

Regards,

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

Postby Rossine » Sat Mar 25, 2006 4:56 pm

Olá Richard,

Code: Select all  Expand view  RUN
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  Expand view  RUN
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.
Rossine
 
Posts: 344
Joined: Tue Oct 11, 2005 11:33 am

Postby Francisco Horta » Sat Mar 25, 2006 5:19 pm

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
Francisco Horta
 
Posts: 845
Joined: Sun Oct 09, 2005 5:36 pm
Location: la laguna, mexico.

Postby Rossine » Sat Mar 25, 2006 9:11 pm

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.
Rossine
 
Posts: 344
Joined: Tue Oct 11, 2005 11:33 am

Postby Taiwan » Sun Mar 26, 2006 1:48 am

Hola rossine,

Thank you so much.
Power user for us.

Regards,

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

Next

Return to FiveWin para Harbour/xHarbour

Who is online

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