Delphi-PRAXiS
Seite 3 von 4     123 4      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   TImage Doppelklick bei gesetzten OnClick Event (https://www.delphipraxis.net/181641-timage-doppelklick-bei-gesetzten-onclick-event.html)

Dejan Vu 2. Sep 2014 10:16

AW: TImage Doppelklick bei gesetzten OnClick Event
 
Versuchs auch mal mit meiner. Mit der bekommst Du einen Einfachklick-Ereignis, wenn nur 1x geklickt wurde (und nicht doppelt) oder ein Doppelklick-Ereignis (aber kein Einfachklick), wenn doppelt geklickt wurde. Ich habe dich so verstanden, das Du entweder ein Einfachklick (exklusiv) oder ein Doppelklick-Ereignis haben willst.

Das Tripleklick ist .. hüstel.. ähm... äh. für die Tonne. Wegen dem hier:
Delphi-Quellcode:
while TripleClickTimer.Enabled do
begin
  Application.ProcessMessages;
end;
Da hat jemand eine Lösung auf deibelkommraus gesucht. Sowas geht gar nicht, finde ich. Triple- Quadrupel etc. Clicks kannst Du sehr schön mit hathor's Lösung bekommen, indem Du die 'BU'-IF-Schleife :mrgreen: Abfrage anpasst

Luki206 21. Sep 2014 11:33

AW: TImage Doppelklick bei gesetzten OnClick Event
 
Ok Danke, nur ist das so das ich mit den Hints der Images arbeite und diese ja dann im Timer nicht verfügbar sind (bzw. nicht ohne variablen Gedöns). Gibt es eine Möglichkeit wie ich die Variable umgehen kann oder muss ich es so machen?

Danke Luki :spin:

PS: Sorry das ich mich erst jetzt wieder melde aber mein Rechner ist kaputt gegangen und ich habe auf die Schnelle nichts neues Gefunden..

Sir Rufo 21. Sep 2014 11:49

AW: TImage Doppelklick bei gesetzten OnClick Event
 
Was haben denn jetzt die Hints mit dem Klicken zu tun?

Luki206 21. Sep 2014 12:44

AW: TImage Doppelklick bei gesetzten OnClick Event
 
Folgendes: Da es mehrere TImage's gibt, muss ich zum unterscheiden diese mit Hints versehen und Prüfe diese dann mit
Delphi-Quellcode:
TImage(Sender).Hint ...
und wenn ich mir das jetzt ansehe
Zitat:

Zitat von Dejan Vu (Beitrag 1270531)
Delphi-Quellcode:
Procedure TMyForm.FormCreate(Sender : TObject);
Begin
  DeferredClickTimer.Enabled := False;
  DeferredClickTimer.Interval := GetDoubleClickInterval()+50; // Ich glaub, die Methode heißt so.
End;

Procedure TMyForm.MyControlClick(Sender : TObject);
Begin
  DeferredClickTimer.Enabled := False;
  DeferredClickTimer.Enabled := True;
End;

Procedure TMyForm.MyControlDoubleClick(Sender : TObject);
Begin
  DeferredClickTimer.Enabled := False;
  ExecuteTheDoubleClickMethod();
End;
Procedure TMyForm.DeferredClickTimerTimer(Sender : TObject);
Begin
  DeferredClickTimer.Enabled := False;
  ExecuteTheClickMethod();
End;

muss ich ja dann den Hint bzw. den String an den Timer weitergeben und deshalb frage ich ob es nicht eine andere Methode gibt als über eine Variable

Sir Rufo 21. Sep 2014 13:15

AW: TImage Doppelklick bei gesetzten OnClick Event
 
Warum du die Hint-Eigenschaft zum Unterscheiden missbrauchst ist mir zwar auch schleierhaft, aber geschenkt.

Natürlich musst du dir bei mehreren Controls, die dieses Doppel-Geklicke nutzen sollen auch noch das Control merken, welches jetzt diese Aktion ausgelöst hat. Also merke dir einfach den Sender und vergleich, ob bei einer weiteren Aktion es sich auch immer noch um den gleichen Sender handelt, sonst hast du ja keinen Doppelklick, sondern zwei normale Klicks auf 2 Controls.

Und ja, das macht man mit einer Variablen, was auch nicht schlimm ist, denn Variablen sind nicht böse.

Luki206 21. Sep 2014 13:26

AW: TImage Doppelklick bei gesetzten OnClick Event
 
Ok, danke. Ich dachte es ginge "schöner" als mit einer Variable aber es geht. Danke noch einmal :thumb:

Edit: ich habe jetzt die Software einmal getestet und mir ist aufgefallen das die Aktion für den SimpleClick sehr lange dauert, kann ich das irgendwie verkürzen?

Sir Rufo 21. Sep 2014 13:48

AW: TImage Doppelklick bei gesetzten OnClick Event
 
Zitat:

Zitat von Luki206 (Beitrag 1273321)
... die Aktion für den SimpleClick sehr lange dauert, kann ich das irgendwie verkürzen?

Wurde hier lang und breit diskutiert - lies die Beiträge

Luki206 21. Sep 2014 13:57

AW: TImage Doppelklick bei gesetzten OnClick Event
 
Zitat:

Zitat von Sir Rufo (Beitrag 1273322)
lies die Beiträge

Habe ich ja nur ist da nichts deswegen geschrieben worden (oder ich übersehe es einfach nur)

Sir Rufo 21. Sep 2014 14:22

AW: TImage Doppelklick bei gesetzten OnClick Event
 
Beitrag #6 und #8

Luki206 21. Sep 2014 14:48

AW: TImage Doppelklick bei gesetzten OnClick Event
 
Ach so. Aber viele Programme haben doch auch auf einem Objekt OnClick und OnDblClick d.h. es muss irgendwie gehen (ohne Timer)?


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:18 Uhr.
Seite 3 von 4     123 4      

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 by Thomas Breitkreuz