Delphi-PRAXiS

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/)
-   -   TImage reagiert nicht auf die Maus (https://www.delphipraxis.net/177215-timage-reagiert-nicht-auf-die-maus.html)

idefix2 24. Okt 2013 19:52

TImage reagiert nicht auf die Maus
 
Hallo,
ich habe wieder ein Problem, bei dem ich nicht weiterkomme.
Meine TImage-Komponente reagiert auf kein Mausereignis, weder auf onclick, noch auf onmousedown noch auf onmouseup.

im Onclick Ereignis der Komponente ist Image1Click eingetragen, und die Methode schaut so aus:

Code:
procedure TfrmAnalyse.Image1Click(Sender: TObject);
begin
showmessage ('Click');
end;

Keine Reaktion beim Klick auf das Bild :(
Image1.enabled ist true

Auch die bei onmouseup und onmousedown eingetragenen Methoden werden beim Mausklick nicht aufgerufen, im Debugger haeb ich bei den Routinen Breakpoints gesetzt die werden nicht erreicht.


edit:
Jetzt habe ich weiter experimentiert, es wird immer obskurer:
Ich habe zusätzlich ein Ereignis onclick für das Formular selbst definiert, in dem das TImage sitzt. Wenn ich auf eine beliebige Stelle ausserhalb des Bildes auf das Formular klicke, passiert nichts. Aber wenn ich auf das Bild klicke, wird das Onclick Ereignis des Formulars aufgerufen.

Union 24. Okt 2013 19:58

AW: TImage reagiert nicht auf die Maus
 
Das kann ich in keiner Delphi-Version nachvollziehen. Du machst bestimmt noch was Anderes. Hast Du vielleicht irgendwo Hooks?

Namenloser 24. Okt 2013 20:13

AW: TImage reagiert nicht auf die Maus
 
Die naheliegendste Vermutung ist für mich, dass eine andere, transparente Komponente über dem Image liegt, z.B. ein anderes TImage, eine TPaintbox oder ein TBevel.

idefix2 24. Okt 2013 20:24

AW: TImage reagiert nicht auf die Maus
 
Ich verwende in dem Programm keine Hooks, über dem Timage liegt auch keine andere Komponente. Das Timage selbst liegt auf einem Tabsheet, aber das sollte doch nicht stören.
Dass beim klick auf das Image die Mausereignisse des Formulars aktiviert werden, beim Klick auf eine Stelle des Formulars ausserhalb des TImage aber nicht, setzt dem ganzen die Krone auf. Ich verstehe absolut nicht, was Delphi da macht.

Union 24. Okt 2013 20:28

AW: TImage reagiert nicht auf die Maus
 
Bist Du SICHER dass die Komponente auf einem Tabsheet liegt und nicht irgendwo anders? Schau Dir mal das dfm an oder die Objektstruktur.

idefix2 24. Okt 2013 20:51

AW: TImage reagiert nicht auf die Maus
 
Liste der Anhänge anzeigen (Anzahl: 1)
Es sitzt direkt auf einem Tabsheet, zusammen mit einem kleinen TMemo, das über das Bild drüber eingeblendet wird (das ist aber viel kleiner als das Bild, ich klicke auf das Bild neben dem Memo

Als Workaround verwende ich jetzt die onmouseup und onmousedown Ereignisse des Formulars, aber geheuer ist mir die Sache nicht.

idefix2 22. Nov 2013 22:48

AW: TImage reagiert nicht auf die Maus
 
So, jetzt bin ich draufgekommen was schuld war - wieder einmal ein trivialer und idiotischer Fehler.
Ich habe keine Ahnung, wie es dazu gekommen ist, wissentlich habe ich die Eigenschaft sicherr nicht gesetzt, aber beim TImage war enabled=false, dann reagiert es natürlich nicht.
Ich bilde mir zwar ein, dass die Eigenschaft enabled true war, aber jetzt ist sie false, und nach der Korrektur funktioniert alles, wie es soll.
Langsam mache ich mir Sorgen um mich...


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:15 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz