Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Mausklick simulieren (https://www.delphipraxis.net/158876-mausklick-simulieren.html)

Lapadula 6. Mär 2011 15:06

Mausklick simulieren
 
Hallo erstmal

ich habe eine Frage zu der Simulation von Mausklicks in einer Art Listbox auf einer Website.
Das ganze solte eine vcl anwendung sein. Das Formular sollte nur 1 Button haben mit "Start"

* Die Maus sollte durch den Klick auf den Button "Start", auf die richtige Position gebracht werden.
Gleichzeitig soll das Prog. beginnen durch eine endlos-Schleife die linke Maustaste zu simulieren.

* Durch eine Tastenkombi sollte das Prog. stoppen

Könnte man das auch vllt. so machen, dass das Prog. erst starten kann wenn man sich auf "dieser" Website befindet ?

Könnte mir vllt Ansätze veraten wie ich sowas angehen muss, bin nämlich ein kompletter anfänger.

roboter202 6. Mär 2011 15:19

AW: Mausklick simulieren
 
Hallo,

Delphi-Quellcode:
// Maus an Position x,y setzen:
SetCursorPos(x, y);
und

Delphi-Quellcode:
// Linke Maustaste simulieren
mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0);
mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0);

Bei dir könnte das dann so aussehen

Das mit der Taste würde aber nicht funzen da ja die Schleife ausgeführt wird am besten du setzt vorher die Anzahl der Klicks

Delphi-Quellcode:
var
klcks : integer ;

procedure TForm1.Button1Click(Sender: TObject);
var i :integer ;
begin
SetCursorPos(x, y); //Werte setzen
For i := 0 to strtoint(edit1.text) do
 begin
 mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0);
 mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0);
 end;
end;
PS : Am besten du machst einen Timer der die Mausposition ausliest und in x,y Variablen speichert und über nen button ausgeschaltet wird damit kannst du betimmen wo er klicken soll.

Quelle : http://www.swissdelphicenter.ch/de/showcode.php?id=360

Lapadula 7. Mär 2011 09:08

AW: Mausklick simulieren
 
So etwas ähnliches habe ich auch schon probiert und jetzt weiss ich auch, wieso ich mit Delphi aufgehört habe:

Es kommt immer der Fehler:Could not compile used unit 'xx.pas'

egal wie simpel das programm ist ? selbst wenn ich dein quelltext 1:1 kopiere, nichts. hab jetzt das halbe internet abgesucht, finde die Lösung aber nicht

roboter202 7. Mär 2011 09:31

AW: Mausklick simulieren
 
Hallo,

Welches Delphi benutzt du ?

Wenn du Windows nicht in den uses einbindest kommt der Fehler :
Code:
[Error] Unit1.pas(28): Undeclared identifier: 'mouse_event'
Kommt der Fehler nur beim Mausklick simulieren oder in Immer auch wenn die Unit keine Procedure hat ?

Gruß Christian

-187- 7. Mär 2011 10:44

AW: Mausklick simulieren
 
Das Thema wurde in den letzte vier Wochen gefühlte 10 mal behandelt. Wie wäre es mal mit der Suchfunktion ?

Lapadula 7. Mär 2011 10:57

AW: Mausklick simulieren
 
benutze delphi 7 auf xp32 und win7-64 fehler tritt bei beiden auf. Hab auch schon danach gegoogelt aber ne richtige lösung hab ich nicht gefunden oder ich versteh das einfach nicht. Ein link zu einer lösung würde reichen

Jacques Murell 7. Mär 2011 11:05

AW: Mausklick simulieren
 
Poste einfach mal deinen gesamten Quelltext.

himitsu 7. Mär 2011 11:09

AW: Mausklick simulieren
 
Zitat:

Zitat von Lapadula (Beitrag 1086432)
Hab auch schon danach gegoogelt aber ne richtige lösung hab ich nicht gefunden

Bei Google suchendelphi Mausklick simulieren > gleich das allererste Suchergebnis sieht doch vielversprechend aus?

Dieses wurde aber auch schonmal hier genannt und diese Codes selber sollten keine derartigen Kompilierungsfehler verursachen, also liegt der Fehler wohl eher in deinem restlichen Code.

-187- 7. Mär 2011 11:12

AW: Mausklick simulieren
 
Zitat:

Zitat von Lapadula (Beitrag 1086380)
und jetzt weiss ich auch, wieso ich mit Delphi aufgehört habe:

- Warum hast du wieder angefangen ?
- Hast du vielleicht mal überlegt das der Fehler bei dir liegt ?
- Glaubst du das dir jemand helfen kann ohne das du uns deinen Code zeigst ?

Das Problem liegt 100% bei dir. Um den Mauszeiger in Position zu bringen und den Klick zu simulieren braucht man 3 Zeilen.

Jacques Murell 7. Mär 2011 11:12

AW: Mausklick simulieren
 
Zitat:

Zitat von -187- (Beitrag 1086441)
Um den Mauszeiger in Position zu bringen braucht man 3 Zeilen.

1 Zeile. :P


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