IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

MFC Discussion :

scrolling vertical et horizontal


Sujet :

MFC

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    2
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 2
    Par d�faut [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 : S�lectionner tout - Visualiser dans une fen�tre � part
    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

  2. #2
    Membre �prouv�

    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    68
    D�tails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 68
    Par d�faut
    Bonjour,

    nPos n'est valide que pour les messages
    SB_THUMBPOSITION ou SB_THUMBTRACK

    Comme une CFormView derive de CScrollView, pourquoi
    n'utiliseriez vous pas la fonction GetScrollPosition( ) dans
    le OnPaint() plutot que de faire le calcul dans les OnXScroll

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    void MyFormView::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar) 
    { 
     
        CFormView::OnHScroll(nSBCode, nPos, pScrollBar); 
    } 
     
    void MyFormView::OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar) 
    { 
        CFormView::OnHScroll(nSBCode, nPos, pScrollBar); 
    } 
     
     
    void MyFormView::OnPaint() 
    { 
       CPaintDC dc(this); 
       CRect rc; 
       CPoint pt = GetScrollPosition();
       GetClientRect (rc); 
       dc.BitBlt(rc.left,rc.top,rc.Width(),rc.Height(),&m_MemDC,pt.x,pt.y,SRCCOPY);//m_MemDC contient toute 
                                                                   //l'image a dessiner 
    }
    Salut

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    2
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 2
    Par d�faut
    oui merci beaucoup ca marche !!!

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. Forcer scroll vertical en empechant scroll horizontal
    Par calitom dans le forum Mise en page CSS
    R�ponses: 5
    Dernier message: 07/11/2011, 10h39
  2. Scroll vertical/horizontal checkedlistbox
    Par lorine dans le forum C#
    R�ponses: 2
    Dernier message: 15/11/2009, 16h12
  3. [winAPI] Scrolling vertical listbox ?
    Par kidpaddle2 dans le forum Windows
    R�ponses: 2
    Dernier message: 22/05/2006, 18h57
  4. [IFrame] Avoir seulement un scroll vertical
    Par Etanne dans le forum Balisage (X)HTML et validation W3C
    R�ponses: 6
    Dernier message: 19/09/2005, 11h33
  5. [scroll] bloquer la horizontal scrollbar
    Par Husqvarna dans le forum Balisage (X)HTML et validation W3C
    R�ponses: 12
    Dernier message: 12/09/2005, 11h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo