begin process at 2012 05 30 00:11:26
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Windows

 > 

GUI

 > 

OnHScroll - SB_THUMBTRACK


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

OnHScroll - SB_THUMBTRACK

mercredi 15 avril 2009 à 10:25:45 | OnHScroll - SB_THUMBTRACK

KrEiTeCh

Je developpe une GUI en C++ (MFC). Dedans j ai une grosse fenêtre ou j utilise les scroll pour naviguer. Du coup j ai utilisé les methodes: OnVScroll et OnHScroll.
void MyWindow::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
{
    int nDelta;
    int nMaxPos = m_rect.Width() - m_nCurWidth;

    switch (nSBCode)
    {
    case SB_LINERIGHT:
        if (m_mScrollPos >= nMaxPos)
            return;
        nDelta = min(nMaxPos/10,nMaxPos-m_mScrollPos);
        break;

    case SB_LINELEFT:
        if (m_mScrollPos <= 0)
            return;
        nDelta = -min(nMaxPos/10,m_mScrollPos);
        break;
    case SB_LEFT:

        break;
       
    case SB_RIGHT:
        break;

    case SB_PAGERIGHT:
        if (m_mScrollPos >= nMaxPos)
            return;
        nDelta = min(nMaxPos/10,nMaxPos-m_mScrollPos);
        break;

    case SB_PAGELEFT:
        if (m_mScrollPos <= 0)
            return;
        nDelta = -min(nMaxPos/10,m_mScrollPos);
        break;
    case SB_THUMBTRACK:
        if (m_mScrollPos >= nMaxPos)
            return;
        nDelta = (int)nPos - m_mScrollPos;
        break;

    default:
        return;
    }
    m_mScrollPos += nDelta;
    SetScrollPos(SB_HORZ,m_mScrollPos,TRUE);
    ScrollWindow(-nDelta,0);
    CDialog::OnHScroll(nSBCode, nPos, pScrollBar);
}

Tout ca marche plutot bien sauf que j ai des slider control dans la fenetre, et il y a un conflit entre le fait de glisser le slider et la position du scroll horizontal (a cause de SB_THUMBTRACK). Quand je glisse le slider j ai la fenetre qui scroll aussi.

Est ce que vous avez une idée sur comment empecher cette interferation.


Cette discussion est classée dans : case, sb, mscrollpos, nmaxpos, ndelta


Répondre à ce message

Sujets en rapport avec ce message

[Win32] Problème Scrollbar [ par Iphelias ] Bonjour,Je developpe actuellement une application win 32 et je rencontre un problème.En gros dans ma fenetre j'ai 2 Scrollbars. Problème barre de défilement - API WIN32 [ par lectpe ] Bonjour à tous !!!Je suis en train de créer une application à l'aide de l'API WIN32 et j'ai un problème lors du défilement de ma scrollbar.Voici mon c [C++] 2 char => 1 int [ par Apaachee ] Bonjour, Je possède une opération : 1+99 que je place dans un tableau de char : coutcin>>exp; //La variable exp contient l'opération scanner un code barre [ par ankou001 ] Bonjour; j'aimerai scanner un code barre avec une douchette et le mettre directement dans une case d'un tableau sans etre obligé de sélèctionner ma ca probleme avec le jeu de loie [ par edwix ] Alors bonjour a tous le monde je vous montre le sujet que j'ais a faire en exercie un jeu de l'oi voici le sujet : -on avance du nombre de cases ind [C] Retour au début du programme [ par thekid06 ] Bonsoir, Je cherche après chaque execution revenir au début du programme. Comment je peut faire s'il vous plaît ? Voilà ma source : [code=cpp]#includ MATRICE.C helppppppppp [ par alex1990 ] Bonjour, je debute en c++ et j'ai quelques problemes[^^confus2] On a deja les fonction: - matriceGetNbCreees - matriceCreerTaille - matriceDetruire calculatrice en ligne de commande [ par devmouad ] [color=purple]bonjour a tous et merci d'avance dans le cadre d'un tp c++ je dois réaliser une calculatrice en ligne de commande ,voici l'enancé de l'e Creation et lecture d'un fichier typé en C [ par Razily ] Bonjour , voilà j'ai un projet de Mastermind à rendre bientôt et je coince sur une partie du code notamment sur l'enregistrement ! l'idée c'est que le logiciel Borland C++ et DevC++ [ par waldomania ] Bonjour, j'ai un grand problème car j'ai programmé un mini projet sur un Dev C++ mais ça marche pas à Borland C++ le projet est en langage c (!=C++)


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,264 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales