2010-12-07 8 views
0

Was ist der beste Weg, um ein 'scrollbares Panel' in MFC (C++) zu erstellen? In der Vergangenheit habe ich verschiedene Fenster "angehängt" oder "oben" in meinem Hauptdialogfenster angezeigt, um verschiedene Seiten einer Anwendung anzuzeigen. Dieses Mal möchte ich ein Steuerfeld erstellen, das gescrollt werden kann (weil die virtuelle Größe des Steuerfelds größer ist als die Größe des Steuerfelds selbst).MFC: Scrollbare Panel/Unterfenster mit Steuerelementen

Kann jemand gute Artikel oder Tutorials empfehlen, wie man das am besten macht?

Dank

Antwort

1

Sie können eine unabhängige Scrollbar Steuerung auf der Seite des Dialogs erstellen. Reagieren Sie auf die Nachrichten im Dialogfeld, um Ihre Steuerelemente zu verschieben. Da die untergeordneten Fenster sich selbst auf den übergeordneten Client-Bereich zuschneiden, können Sie sie bei einem Bildlauf von der Seite vollständig aus dem Dialog entfernen.

+0

Danke Mark .. Ich finde im Moment, dass meine Kindfenster außerhalb des Elternfensters gerendert werden. Ich habe "Clip children" in den Einstellungen des Elternfensters aktiviert und es passiert immer noch dasselbe. Muss ich etwas anderes machen? – SparkyNZ

+0

Aha! Ich habe vergessen, das Kind-Fenster in ein "Kind" -Fenster zu ändern. Ich denke, jetzt wird der Spaß-Teil versuchen, die Bildlaufleisten zum Laufen zu bringen. – SparkyNZ

+0

Wenn keine Benachrichtigungsmeldungen für Scrollbars in Classwizard verfügbar sind .. Wie würde ich das tun? – SparkyNZ

0

Wenn Sie die Steuerelemente in eine CScrollView oder eine CFormView platzieren, werden sie automatisch im Ansichtsbereich gescrollt.

+0

Danke dafür djeidot - Ich möchte zwar, dass kleine Bereiche scrollbar sind (dh ich verwende nicht CScrollView/CFormView - Ich habe eine Dialog-App und möchte mehrere kleine Regionen scrollen (untergeordnete Fenster)). Prost. – SparkyNZ