Einzelnen Beitrag anzeigen

Panthrax

Registriert seit: 18. Feb 2005
286 Beiträge
 
Delphi 2010 Enterprise
 
#2

Re: Zwei Memofelder gleichzeitig scrollen

  Alt 14. Mär 2010, 01:15
Delphi-Quellcode:
  object Memo1: TMemo
    Lines.Strings = (
      'Memo1'
      '2'
      '3'
      ...
      '29')
    ScrollBars = ssVertical
  end
  object ScrollBar1: TScrollBar
    Kind = sbVertical
    PageSize = 10 // im Programm anpassen
    Max = 100 // im Programm anpassen
    Min = 0 // im Programm anpassen
    OnScroll = ScrollBar1Scroll
  end
Delphi-Quellcode:
procedure TForm1.ScrollBar1Scroll(Sender: TObject; ScrollCode: TScrollCode;
  var ScrollPos: Integer);
var
  TopLineIndex: Integer;
begin
  case ScrollCode of
    scLineUp:
      Memo1.Perform(EM_SCROLL, SB_LINEUP, 0);
    scLineDown:
      Memo1.Perform(EM_SCROLL, SB_LINEDOWN, 0);
    scPageUp:
      Memo1.Perform(EM_SCROLL, SB_PAGEUP, 0);
    scPageDown:
      Memo1.Perform(EM_SCROLL, SB_PAGEDOWN, 0);
    scTrack:
    begin
      TopLineIndex := Memo1.Perform(EM_GETFIRSTVISIBLELINE, 0, 0);
      Memo1.Perform(EM_LINESCROLL, 0, ScrollPos - TopLineIndex);
    end;
  end;
end;
"Es gibt keine schlimmere Lüge als die Wahrheit, die von denen, die sie hören, missverstanden wird."
  Mit Zitat antworten Zitat