Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Hamsterlaufrad ääh Mauslaufrad (https://www.delphipraxis.net/24553-hamsterlaufrad-aeaeh-mauslaufrad.html)

Schneck 25. Jun 2004 17:06

Re: Hamsterlaufrad ääh Mauslaufrad
 
Hallo da draußen,
null blassen Schimmer, was Du meinst :( Aber wenn ich die MousDown-Procedure überschreibe, das geht dann sehr gut. Auf Klicken geht's auf Wheelen geht's nicht.

Hier jetzt die vollständige erweiterte Kompo mit funzo Mausklick aber nixfunzo Mousewheel:

Delphi-Quellcode:
unit MZBlatt_TEST1;

interface

uses
   Classes, ExtCtrls, WinTypes, Dialogs, Controls;

type
  TZeichenBlatt_TEST1 = class(TImage)
  private
  protected
    function DoMouseWheel(Shift: TShiftState; WheelDelta: Integer; MousePos: TPoint): Boolean; override;
    procedure MouseDown(Button: TMouseButton; Shift: TShiftState; X, Y: Integer); override;
    constructor Create(aOwner: TComponent); override;
  published
    property OnMouseWheel;
  end;

procedure Register;

implementation

procedure Register;
begin
  RegisterComponents('Test', [TZeichenBlatt_TEST1]);
end;

constructor TZeichenBlatt_TEST1.Create(aOwner: TComponent);
begin
  inherited create(aOwner);
end;

procedure TZeichenBlatt_TEST1.MouseDown(Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
  inherited MouseDown(Button, Shift, X, Y);
  ShowMessage('MoiseleKlickGehtSupertoll');
end;

function TZeichenBlatt_TEST1.DoMouseWheel(Shift: TShiftState; WheelDelta: Integer; MousePos: TPoint): Boolean;
begin
  ShowMessage('Vorher: DräDichDräDichRäädchen');
  Result := inherited DoMouseWheel(Shift, WheelDelta, MousePos);
  ShowMessage('Nacher: HasteDichGutGeräätMeinRäädchen');
end;

end.
Schneck
chneck
hneck
neck
eck
ck
k

Schneck 27. Jun 2004 20:20

Re: Hamsterlaufrad ääh Mauslaufrad
 
Halloa, schon wieder ich :zwinker: ,
bin der Lösung meines Problemes noch auf der Spur. Aber warum funzt das Wheelereignis vom Form1 und nich das von der Kompo ZeichenBlatt, obwohl im Objektinspektor dieses Event auch per Hand belegt werden kann? Kann ich da vielleicht etwas mit dem MouseWheelHandler drehn, oder ist diese Idee ganz falsch (keine Ahnung was ein Handler überhaupt tut)?
Fragt sich
Schneck

RealMcFly 12. Jul 2004 21:40

Re: Hamsterlaufrad ääh Mauslaufrad
 
Hallo ihr...
Achtet mal darauf, dass mouse-wheel nur auf Komponenten geht, die den Focus haben können... vieleicht TWinControl oder TCustomControl zum vererben nehmen...

Grüfe :wall: McFly

Schneck 12. Jul 2004 22:27

Re: Hamsterlaufrad ääh Mauslaufrad
 
Halloa,

der Tipp mit dem Focus ist sicher gut, den hab ich auch schon von anderen Seiten bekommen; aber wie geht das mit dem Focus? :gruebel: Konnte unter der Delphihilfe und in meiner bescheidenen Literatur nicht viel dazu finden.
Habs auch schon mit Updaten, Registrieren und Neuinstallieren versucht, aber nix hilft. Mein Arzt sagt, ich sei depressiv; ich weiß jetzt warum :mrgreen:
Werde mir damit helfen, dass ich zomme, wenn ich die linke Maustaste gedrückt halte ... das ist zwar nich so cool wie Wheelen, aber auf MausClick funzt bei meiner Komponente alles gut.
Aber vielleicht kann mir jemand doch noch eine Kurznachhilfestunde im Focusieren geben, vielleich geht es ja doch noch damit?!

Liebe Grüße und Danke
Schneck


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:53 Uhr.
Seite 3 von 3     123   

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