ScrollBar Position festlegen
-
Hallo,
ich habe ein Control, welches von CWnd abgeleitet ist.
Zum Scrollen benutzt es die Funktion:
CWnd::EnableScrollBarCtrl(SB_HORZ, bEnable);
Soweit funktioniert das auch wunderbar.
Nun die Frage: Wie kann ich die Position bzw die Größe der Scrolleiste festlegen. Die soll nämlich NICHT über das ganze Control gehen, sonder nur ab einer bestimmten Position bis zum Ende. Der Rest könnte auch fix die Hintergrundfarbe sein.
So in entwa:
| | | | | | | +---+----------+---+ | | < | | > | +------------------+---+----------+---+
GetScrollBarCtrl() liefert bei CWnd ja leider immer NULL zurück.
Gibt es da eine Möglichkeit?
Danke,
Chriss
-
Das geht nur über das ausblenden des Scrollbars, der vom Fenster automatisch bereit gestellt wird. Dann muss man ein eigenes Control erzeugen und entsprechend platzieren und diesen dann regelmässig mit dem Control synchronisieren.
Das ist alles in der MFC-Next implementiert, dort kann ein Scrollbar auch recht neben dem Tabs eiines Views dargestellt werden wie es auch Excel macht.