[R�solu]scrolling vertical et horizontal
bonjour tout le monde j'ai un probl�me concernant l'affichage d'une image d'arri�re plan
au fait le probl�me se pose sutout quand je redimensionne ma fen�tre et j'essaye de la parcourir avec les scrolls bars au fait quand je clique directement sur les scroll bar (que se soit vertical ou horizontal) j'arrive bien a capter la position du scroll mais quand j'essaye de cliquer sur les boutons de la fen�tre qui font bouger les scrolls bars j'ai toujours une position nulle du scroll qui est retourn� je ne sais pas pourquoi
voila en gros ce que je fais :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68
|
void MyFormView::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
{
switch (nSBCode)
{
case SB_TOP:
sourcex = 0;
break;
case SB_BOTTOM:
sourcex = INT_MAX;
break;
case SB_THUMBTRACK:
sourcex= nPos;//la il entre lorsque je clique directement sur le scroll et
//ca marche j'obtient la bonne nPos
break;
case SB_LINEUP:
sourcex = nPos;//et la lorsque je clique sur le boutton au dessus du scroll
//et nPos est toujours 0?????
break;
case SB_LINEDOWN:
sourcex = nPos;//et la lorsque je clique sur le boutton au dessous du
//scroll et nPos est toujours 0????
break;
}
CFormView::OnHScroll(nSBCode, nPos, pScrollBar);
}
CFormView::OnHScroll(nSBCode, nPos, pScrollBar);
}
void MyFormView::OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
{
switch (nSBCode)
{
case SB_TOP:
sourcey = 0;
break;
case SB_BOTTOM:
sourcey = INT_MAX;
break;
case SB_THUMBTRACK:
sourcey = nPos;//la il entre lorsque je clique directement sur le scroll et
//ca marche j'obtient la bonne nPos
break;
case SB_LINEUP:
sourcey = nPos;//et la lorsque je clique sur le boutton au dessus du scroll
//et nPos est toujours 0?????
break;
case SB_LINEDOWN:
sourcey = nPos;//et la lorsque je clique sur le boutton au dessous du
//scroll et nPos est toujours 0????
break;
}
CFormView::OnHScroll(nSBCode, nPos, pScrollBar);
}
void MyFormView::OnPaint()
{
CPaintDC dc(this);
CRect rc;
GetClientRect (rc);
dc.BitBlt(rc.left,rc.top,rc.Width(),rc.Height(),&m_MemDC,sourcex,sourcey,SRCCOPY);//m_MemDC contient toute
//l'image a dessiner
} |
a quoi c'est d� ca je ne sais pas exactement comment windows g�re ca surtout que je si quelqu'un a une id�e ladessus je lui serai tres reconnaissanten'ai pas besoin de definir un control
merci d'avance