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 :

Probl�me pour l'impl�mentation d'une ScrollBar


Sujet :

MFC

  1. #1
    Membre confirm�
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    90
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 90
    Par d�faut Probl�me pour l'impl�mentation d'une ScrollBar
    Salut, j'ai un soucis afin d'impl�menter une ScrollBar.

    Celle-ci est impl�ment�e dans une classe d�riv�e d'un CDialog, cette m�me classe d�riv�e d'un CDIalog est impl�ment�e dans une classe d�riv�e d'un CView.

    Par d�faut, la fenetre CDialog est plus grande que la vue de la CView, or la scrollbar, elle, est � la taille du CDialog et donc on ne voit pas son extr�mit� du bas qui est � l'ext�rieure de la vue.

    Je ne m'en sors pas et j'aimerai savoir quelle est la solution pour bien impl�menter ma ScrollBar afin qu'on la voit dans sa totalit� dans ma CView et que sa taille s'adapte si on modifie la taille de la fen�tre.

    Merci par avance pour vos coups de pouce!

  2. #2
    Expert confirm�
    Avatar de Mat.M
    Profil pro
    D�veloppeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 539
    D�tails du profil
    Informations personnelles :
    Localisation : France, Rh�ne (Rh�ne Alpes)

    Informations professionnelles :
    Activit� : D�veloppeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 539
    Par d�faut
    tout �a est bien compliqu�..
    Une CDialog n'est jamais utilis�e � l'int�rieur d'une CView; il faut prendre une CFormView..
    Si tu as des probl�mes cela vient des attributs de la CDialog.
    Le mieux c'est d'utiliser des CScrollView et CFormView conjointement avec des splitters

  3. #3
    Membre confirm�
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    90
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 90
    Par d�faut
    Merci pour ta r�ponse Mat.

    L'architecture de l'application sur laquelle on m'a demand� de travailler est ainsi. Dans la classe d�riv�e d'un CDialog, il y a une instruction GetParent(), je me suis tromp� sur l'objet qui nous est renvoy� qui est plut�t du type CWnd. C'est un GetParent de cet objet qui nous renvoie ensuite un autre objet qui est lui de type CView.

    Quand je rajoute les instructions ShowScrollBar et EnableScrollBar dans ma classe d�riv�e de CDialog ou ma classe d�riv�e de CWnd, la ScrollBar obtenue d�passe la taille normale de l'�cran, mais si je mets ces instructions dans ma CView, � ce moment la j'obtiens bien une scrollbar qui garde la taille de la fenetre en cours et qui se resize lorsque je modifie la taille de ma fen�tre.

    Quelle est la solution � adopter afin de ne pas trop chambouler l'architecture actuelle de l'application?


    Edit: j'ai oubli� de pr�ciser: dans le cas o� j'affiche la ScrollBar dans la classe d�riv�e d'un CDialog, j'arrive cependant bien � catcher mon �v�nement OnVScroll. Par contre, dans le cas o� j'affiche la ScrollBar dans la classe d�riv�e d'une CView, je suis incapable de catcher le m�me �v�nement. EN r�sum�, d'un c�t� j'ai une ScrollBar qui est correctement dimensionn�e mais qui est incapable de traiter mon event, de l'autre j'ai une scrollbar mal dimensionn�e mais qui est capable de catcher mon event... Embetant tout �a lol

  4. #4
    Membre confirm�
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    90
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 90
    Par d�faut
    Bonjour,

    je n'ai toujours pas r�ussi � bien afficher et faire fonctionner ma scrollbar.

    Quelqu'un pourrait-il m'aider svp? Merci par avance!

  5. #5
    Membre confirm�
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    90
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 90
    Par d�faut
    Salut,

    J'ai finalement r�ussi � impl�menter ma scrollBar correctement tout en catchant comme il se doit les �v�nements qui lui sont associ�s.

    Maintenant, j'ai un nouveau soucis... Si je d�place le curseur de ma scrollBar, puis redimensionne la fen�tre o� se trouve ma scrollBar, l'affichage est par la suite tronqu�, ou alors des zones de ma CDialog s'agrandissent...

    Par contre, si je ne touche pas a ma scrollBar et que je redimensionne la fen�tre, l'affichage reste correct.

    Comment faire donc pour bien g�rer le redimensionnement de mes fen�tres avec ma scrollBar?

  6. #6
    Membre confirm�
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    90
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 90
    Par d�faut
    Ce probl�me est r�solu

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

Discussions similaires

  1. [MVC] Probl�me pour l'impl�mentation
    Par Baptiste Wicht dans le forum MVC
    R�ponses: 20
    Dernier message: 24/04/2007, 21h29
  2. probl�me pour reattacher un objet � une session
    Par K-Ka� dans le forum Hibernate
    R�ponses: 2
    Dernier message: 05/07/2006, 15h16
  3. R�ponses: 28
    Dernier message: 24/05/2006, 18h20
  4. R�ponses: 4
    Dernier message: 19/04/2006, 15h10
  5. probl�me pour l'ajout d'une cl� �trang�re
    Par ELKCHAOU dans le forum Langage SQL
    R�ponses: 5
    Dernier message: 08/12/2005, 10h38

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