![]() |
Memo's synchron scrollen
Ich habe 2 Memo's mit der gleichen Anzahl Lines. Wenn ich im Memo1 die vertikale Scrollbar benutze soll automatisch synchron dazu, das Memo2 vertikal gescrollt werden.
Wie kann man sowas verwirklichen? Das Problem ist vor allem, dass man mitbekommen muß, wann gescrollt wird und dafür gibt es so direkt kein Ereignis. |
Re: Memo's synchron scrollen
Scrollen geht mit Memo.Scrollby(DeltyX, DeltaY);
Das Scrollen selber passiert im Parent TWinControl und zwar anhand der Messages:
Code:
Ich denke, da kannst Du Dich reinhängen.
procedure WMHScroll(var Message: TWMHScroll); message WM_HSCROLL;
procedure WMVScroll(var Message: TWMVScroll); message WM_VSCROLL; |
Re: Memo's synchron scrollen
Fange die WM_VSCROLL und WM_HSCROLL nachrichten hab und schick sie mittels Perfrom an das andere Memo-Feld weiter.
Schaul auch mal unter: ![]() wenn du nicht gerade etwas ableiten möchtest... :wink: |
Re: Memo's synchron scrollen
@ neolithos: Abgefangen bekommt man das damit sehr schön. Nur das Mausrad wird ignoriert?!
Außerde weiß ich nciht so ganz, wie ich die Parameter (eigentlich nur der 2.) vom Perform setzen muß? |
Re: Memo's synchron scrollen
da gibt es noch eine Nachricht lass mich raten WM_MOUSEWHEEL oder so!
Delphi-Quellcode:
eigentlich sollte das das Maus Rad mit einschließen...
with Message do
case Msg of WM_VSCROLL, WM_HSCROLL: Memo.Perform(Msg, WParam, LParam); end; |
Re: Memo's synchron scrollen
So funktioniert es halt, nur das Mausrad gibt keine Message.
|
Re: Memo's synchron scrollen
Delphi-Quellcode:
with Message do
case Msg of WM_VSCROLL, WM_HSCROLL, WM_MOUSEWHEEL: Memo.Perform(Msg, WParam, LParam); end; |
Re: Memo's synchron scrollen
Super :hello:
|
Re: Memo's synchron scrollen
Kennst du zufällig das MS Tool Spy XX
|
Re: Memo's synchron scrollen
Nein, warum?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:10 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz