Delphi-PRAXiS
Seite 1 von 2  1 2      

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 Pagecontrol -> DoppelClick (https://www.delphipraxis.net/3091-pagecontrol-doppelclick.html)

mimi 22. Feb 2003 15:02


Pagecontrol -> DoppelClick
 
Hallo,
Wie kann ich ein Doppelklick auf einem Tabsheet in der PageContro
prüfen !

CalganX 22. Feb 2003 15:15

Hmm... wenn das Ereignis "OnDblClick" nicht existiert:
Delphi-Quellcode:
procedure TForm1.PageSheet1MouseDown({...}); // im OnMouseDown deiner Seite
begin
  inc(iClickCounter);
  if iClickCounter = 2 then begin
    //tu' was...
    iClickCounter := 0;
  end;
end;
Wobei iClickCounter eine globale Variable vom Typ Byte oder Word ist.

Chris

mimi 22. Feb 2003 16:12

gibt es nicht noch eine andre möglichkeit ?
weil so geht das doch nicht ;)

Alexander 22. Feb 2003 16:57

Wieso soll das nicht funktionieren?

//Nachtrag:

Du könntest dir eine eigene Komponente schreiben, abgeleitet von TPageControl, oder mal auf torry suchen. Sonst musst du schon solch eine Lösung wie von Chris nehmen...

Haegar 22. Feb 2003 18:25

soll der etwa zwischen doppel- u. einfach-klick unterscheiden?
der einfach-klick is ja automatish, wenn ich mich net täusche. und deswegen wird bei jedem doppelklick-ereigniss auh automatisch der einfach-klick ausgeführt (hab ich mal gelesen). deswegen denke ich wird das so nicht funktionieren (a la chris).

dann vielleicht doch ne eigene komponente wie schon erwähnt!



gruss haegar

mimi 22. Feb 2003 21:03

diser code hat nur einen nachteil:
wenn ich einmal drauf klicke und dann etwas warte z.b. einige miten und dann nochmal draufklicke dann wird erst der code für den Doppelclick ausgeführt..

Irgenwo habe ich mal gelsen das ist eine Windows nachricht geben soll.
@alexander
bis du der alexander aus Oldenburg ?
Wenn ja: Dennis hatte mal gesagt das du angefagen hast NonVCL zu machen, da muss so eine funktion dabei sein denke ich mal bzw eine windows botschaft !
weiß du etwas darüber ?

nailor 22. Feb 2003 22:03

Speicher in die Variable statt der Zahl den TickCount und rechne nachher aus, wie lange dazwischen vergangen ist.

Ich weiß allerdings nicht was Leute dazu sagen, die in Windows die Doppelklickzeit auf eine halbe Stunde gestellt haben, oder nen MAustreiber nehmen, der automatisch Doppelklickt (zb bei der mittleren Taste). Kann sein, dass das dann nicht mehr geht, je nachdem, wie die gebaut sind.

mimi 22. Feb 2003 22:28

OK!
ich sehe schon, es geht wol nicht andres !

irgenwo, habe ich das mal andres gesehen und zwar mit einer Windows Nachricht !

Alexander 23. Feb 2003 11:21

jep ich bin der Alexander aus Oldenburg...
Es gibt die Message WM_Command, ich weiß allerdings nicht, ob man da auch Doppelclicks mit abfragen kann, wenn aber wahrscheinlich so wie oben von Chris geschrieben

CalganX 23. Feb 2003 11:24

Das sollte funktionieren mit WM_COMMAND. Allerdings musst du dann eine spezielle Message-Abfang-Funktion schreiben...

Chris


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:24 Uhr.
Seite 1 von 2  1 2      

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