Einzelnen Beitrag anzeigen

Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.549 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Mehrere Listboxen zusammen scrollen

  Alt 22. Jun 2010, 17:20
Ich habe einmal ein Minimalbeispiel erstellt (nur ein Formular mit 2 Listboxen, es wird auch nur das vertikale Scrollen ausgewertet):
Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TListBox = class(StdCtrls.TListBox)
  private
    FChildListBox: TListBox;
    procedure WMVScroll(var Msg: TMessage); message WM_VSCROLL;
  public
    property ChildListBox: TListBox read FChildListBox write FChildListBox;
  end;

  TForm1 = class(TForm)
    ListBox1: TListBox;
    ListBox2: TListBox;
    procedure FormCreate(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

{ TListBox }

procedure TListBox.WMVScroll(var Msg: TMessage);
begin
  inherited;
  if Assigned(FChildListBox) then
    SendMessage(FChildListBox.Handle,Msg.Msg,Msg.WParam,Msg.LParam);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  ListBox1.ChildListBox := ListBox2;
end;

end.
[edit] Sollen die Listboxen allerdings wechselseitig scrollen, sind ein paar Verrenkungen nötig (siehe Beispiel bei den Schweizern). [/edit]
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen

Geändert von DeddyH (22. Jun 2010 um 17:34 Uhr)
  Mit Zitat antworten Zitat