![]() |
Frage zu WM_LBUTTONDOWN und WM_LBUTTONUP
Also ich habe folgendes zusammengeschustert:
Delphi-Quellcode:
So, aber nun führt das dazu, das in meinem Programm jeder Klick an meinen MenuButton geht. Dh wenn ich zB auf das X der Form klicke, dann wird der Button geklickt!
procedure TMenuButton.WMLButtonDown(var Msg: TMessage);
begin MouseDown; end; procedure TMenuButton.WMLButtonUp(var Msg: TMessage); begin MouseUp; end; procedure TMenuButton.MouseDown; begin if (csDesigning in ComponentState) = False then begin Clicked := True; Repaint; end; end; procedure TMenuButton.MouseUp; begin if (csDesigning in ComponentState) = False then begin Clicked := False; Repaint; end; end; Wie verhinder ich das, bzw was hab ich falsch gemacht und was muss ich ändern? :) Edit: Haeh? Nun is das Problem plötzlich weg...dabei hab ich daran eig nix geändert! Nagut, Problem gelöst wies aussieht, sry ^^ Edit2: Nun gehts plötzlich wieder nichmehr! ?!?! wasn da los nun bin ich verwirrt! Also tritt irgendwie nur manchmal auf... |
Re: Frage zu WM_LBUTTONDOWN und WM_LBUTTONUP
Hallo,
du solltest nur die von TControl geerbten Methoden ![]() ![]()
Delphi-Quellcode:
Gruß Hawkeye
type
TMenuButton = class (TCustomPanel) [...] protected procedure MouseDown (Button: TMouseButton; Shift: TShiftState; X, Y: Integer); override; procedure MouseUp (Button: TMouseButton; Shift: TShiftState; X, Y: Integer); override; end; procedure TMenuButton.MouseDown (Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin inherited; Clicked := True; Invalidate; end; procedure TMenuButton.MouseUp (Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin inherited; Clicked := False; Invalidate; end; |
Re: Frage zu WM_LBUTTONDOWN und WM_LBUTTONUP
Hehe gut da hätte ich auch drauf kommen können, aber was ist denn generell an meiner Methode schlechter? Und warum funzt sie nich immer? (meistens tut sie das tritt nur selten auf das Problem)
|
Re: Frage zu WM_LBUTTONDOWN und WM_LBUTTONUP
Zitat:
Gruß Hawkeye |
Re: Frage zu WM_LBUTTONDOWN und WM_LBUTTONUP
Aso ok :)
Edit: Da hätt ich fast das Danke vergessen ^^ |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:38 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