AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Zwei Memofelder gleichzeitig scrollen

Ein Thema von Ginko · begonnen am 13. Mär 2010 · letzter Beitrag vom 19. Mär 2010
 
Ginko

Registriert seit: 30. Aug 2008
208 Beiträge
 
FreePascal / Lazarus
 
#13

Re: Zwei Memofelder gleichzeitig scrollen

  Alt 19. Mär 2010, 18:33
Hallo Panthrax, so klappt das natürlich noch besser danke.
Ich habe mal die Scrollbar des Partner Memos rausgeholt und die MouseWheel Prozedur hinzugefügt, welche auch auf das Mausrad reagieren zu scheint, wenn nur die Scrollbar des TMyMemo vorhanden ist. Allerdings weiß ich nicht wie ich jetzt dem Partner Memo mitteilen kann, dass es das selbe macht wie das Hauptmemo. So wie ich es gemacht habe klappt es jedenfalls nicht, man sieht aber, dass das andere Memo reagiert.
Hier mal der erweiterte Quelltext:

Delphi-Quellcode:
unit Unit3;

interface

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

type
  TMyMemo = class(TMemo)
    private
    FPartner: TWinControl;
    public
    property Partner: TWinControl read FPartner write FPartner;
    procedure WMVScroll(var Message: TWMVScroll); message WM_VSCROLL;
    procedure MouseWheelHandler(var Message: TMessage); reintroduce; message WM_MouseWheel;
  end;


  TForm3 = class(TForm)
    Memo1: TMemo;
    StaticText1: TStaticText;
    procedure FormCreate(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form3: TForm3;

implementation

{$R *.dfm}

{ TMyMemo }


procedure TMyMemo.WMVScroll(var Message: TWMVScroll);
begin
  inherited;
  if Assigned(FPartner) then
    FPartner.Dispatch(Message);
end;

procedure TMyMemo.MouseWheelHandler(var Message: TMessage);
begin
  inherited;
  SendMessage(FPartner.Handle,WM_VSCROLL,SB_VERT,0);
end;

{ TForm3 }

procedure TForm3.FormCreate(Sender: TObject);
var
  Memo: TMyMemo;
begin
  with TMyMemo.Create(Self) do
  begin
    Parent := Self;
    Left := 3;
    Top := 8;
    Width := 185;
    Height := 89;
    ScrollBars := ssVertical;
    Lines.Text := Memo1.Lines.Text;
    Partner := Memo1;
  end;
end;

end.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:33 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