Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi einfachen mausklick erzeugen (https://www.delphipraxis.net/9776-einfachen-mausklick-erzeugen.html)

Intruder 3. Okt 2003 23:03


einfachen mausklick erzeugen
 
bin totaler newbie daher wird eine antwort auf meine frage auch
total leicht für euch sein...
ich will einen einfachen mausklick erzeugen z.B.

If Label1.caption = Edit1.text then "Mausklick"

das wäre schon alles, der mausklick muss auch an keiner besonderen position
stattfinden, einfach da wo sich die maus gerade befindet.

Schon mal danke.
Intruder

Leuselator 3. Okt 2003 23:04

Re: einfachen mausklick erzeugen
 
sag mal noch, wer/was auf den Mausklick reagieren soll...

Intruder 3. Okt 2003 23:06

Re: einfachen mausklick erzeugen
 
es soll nichts auf den mausklick reagieren, der mausklick soll einfach nur stattfinden mehr nicht

Leuselator 3. Okt 2003 23:11

Re: einfachen mausklick erzeugen
 
nun - ich fürchte, so schnuckelt das nict.
Ein Mausklick ist eine Windows-Botschaft. Windows-Botschaften gelangen in die Botschaftsverarbeitung und werden dort verarbeitet. D.h. Ein Botschaftsverteilmechanismus reicht die Botschaft an alle möglichen Windows (im ferneren Sinne alle grafischen Elemente), bis eines darauf reagiert. Du könntest nun eine solsche Botschaft in den Botschafts-Stack packen, aber dafür würde sich dann noch niemand (keine Komponente)so recht verantwortlich fühlen. Deshalb meine Frage, wer/was darauf reagieren soll. Wenn es eine Komponente in Deinem Programm ist, dann kannst Du mit dem SendMessage eine MausKlickBotschaft an die gewünschte Komponente senden und diese wird dann darauf reagieren...

(das Ganze ist stark vereinfacht dargestellt)

Wenn Du also Hülfe wünschst, müsstest Du schon etwas genauer erklären, wo Du hin willst.

Intruder 3. Okt 2003 23:17

Re: einfachen mausklick erzeugen
 
also zur erklärung das ganze kleine programm
ich hab ein label was die aktuelle uhrzeit beinhaltet und ein edit feld in dem ich eine "weckzeit" eingeben kann, wenn "weckzeit" = der uhrzeit ist soll ein mausklick stattfinden , wie schon gesagt es ist ganz davon abhängig wo sich der mauszeiger befindet, wenn beim auslösen der procedure der mauzeiger gerade auf der startmenü schaltefläche ist soll sich von mir aus das startmenü öffnen, wenn der mauszeiger gerade auf der playtaste von winamp ist soll der anspringen,
dachte es wäre einfacher einen mausklick zu "simulieren" :(

Leuselator 3. Okt 2003 23:21

Re: einfachen mausklick erzeugen
 
Zwar erschließt sich mir der Sinn einer solchen anwendung nicht ganz, lustig isses aber allemal :)

Also schau mal in der Win32-OnlineHilfe nach: PostMessage,PeekMessage,PokeMessage und DispatchMessage.

Eins vorab: wenn Du Dich noch nie mit Windows-API und Botschaften (Messages) beschäftigt hast, wird das ein dicker Brocken...

Edit: PS.: hier in der DP im Forum WindowsAPI finden sich 'ne Menge Beiträge rund um Botschaften...

Snoop007 3. Okt 2003 23:33

Re: einfachen mausklick erzeugen
 
nicht die feine englische art, ist aber schnell umzusetzen und du brauchst dir nicht umständlich das handle holen und dann mit sendmessage narichten an das objekt schicken, obwohl das die bessere möglichkeit wäre

Delphi-Quellcode:
var
  z :TPoint;
begin
  GetCursorPos(z);
  mouse_event(MOUSEEVENTF_LEFTDOWN,z.x,z.y,0,0);
  mouse_event(MOUSEEVENTF_LEFTUP,z.x,z.y,0,0);


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:19 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