Wichtige Frage zu Abbildungsmodi

steffi1985

Grünschnabel
Hallo Ihr!

Ich hab da ein Problem mit einer Ansicht, die von CScrollView abgeleitet ist. Und zwar will ich Folgendes erreichen: Klickt der Benutzer auf eine Stelle in der Ansicht, so soll sich die Ansicht so "verschieben", dass dieser Punkt dann in der Mitte des Fensters liegt.
Habe auch schon einiges ausprobiert, aber es will einfach nicht so richtig funktionieren (bin auch noch relativ unerfahren im Umgang mit MFC...)
Daher wäre es superlieb, wenn mir jemand von Euch eine/n Lösung/Tipp geben könnte :)

Liebe Grüße, Steffi :)
 
Hi,
die Umsetzung hängt sehr davon ab, wie groß du den ScrollSize eingestellt hast. Um das Bild zu verschieben, muß das zugrundelegende Zeichenfenster größer als der Client-Bereich sein. dann kannst du anhand der Position des Mauszeigers die Werte berechnen, wie weit der Fensterinhalt verschoben werden muß (vertikal und horizontal). Verschieben kannst du den Fensterinhalt mit der Funktion ScrollToPosition (Memberfunktion von CScrollView). Übergeben mußt du ein CPoint-Object in logischen Koordinaten(!). Schau mal in der MSDN nach, da findest du die Funktion näher beschrieben.

Mfg

langer
 
Zurück