2010-12-07 24 views
0

Quel est le meilleur moyen de créer un «panneau déroulant» dans MFC (C++)? Dans le passé, j'ai affiché différentes fenêtres "attachées" ou "en haut" de ma fenêtre de dialogue principale comme un moyen d'afficher différentes pages d'une application. Ce que je veux faire cette fois est de créer un panneau de contrôles qui peut être défilé (parce que la taille virtuelle du panneau est plus grande que la taille du panneau lui-même).MFC: Panneau/sous-fenêtres défilant contenant des contrôles

Quelqu'un peut-il recommander de bons articles ou des tutoriels sur la meilleure façon de faire cela?

Merci

Répondre

1

Vous pouvez créer un contrôle indépendant sur la barre de défilement du côté de votre boîte de dialogue. Répondez aux messages dans la boîte de dialogue pour déplacer vos contrôles. Étant donné que les fenêtres enfants se recadreront dans la zone du client parent, n'hésitez pas à les déplacer complètement hors de la boîte de dialogue en faisant défiler la page.

+0

Merci Mark .. Je trouve en ce moment que mes fenêtres enfants sont rendus en dehors de la zone de la fenêtre parent. J'ai vérifié "Clip enfants" sur les paramètres de la fenêtre parente et la même chose se passe toujours. Ai-je besoin de faire autre chose? – SparkyNZ

+0

Aha! J'ai oublié de changer la fenêtre de l'enfant à une fenêtre "Enfant". Je suppose que maintenant la partie amusante sera d'essayer de faire fonctionner les barres de défilement. – SparkyNZ

+0

Si aucun message de notification n'est disponible pour les barres de défilement dans Classwizard .. comment procéder? – SparkyNZ

0

Si vous placez les commandes dans un CScrollView ou un CFormView, elles seront automatiquement défilées dans la zone d'affichage.

+0

Merci pour ce djeidot - Je veux que les petites zones soient scrollables (ie je n'utilise pas CScrollView/CFormView - J'ai une application Dialog et je veux faire défiler plusieurs petites régions (fenêtres enfants)). À votre santé. – SparkyNZ