Wie simoliere ich einen tastatur oder maus klick?

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Macros
Beiträge: 1361
Registriert: 23.12.2005 15:00
Wohnort: Olching(bei FFB)
Kontaktdaten:

Beitrag von Macros »

Lies dir durch, was der Debugger ausgibt.
für diese Befehle musst du erst ein Fenster oder einen Screen öffnen.
Bei Tasten hilft es auch, wenn man den Debugger deaktiviert, aber
bei Mouse-Funktionen dürfte das nicht gehen.

Du kannst aber auch die Abfragen über API machen.
Die Befehle kommen gleich.
Benutzeravatar
Macros
Beiträge: 1361
Registriert: 23.12.2005 15:00
Wohnort: Olching(bei FFB)
Kontaktdaten:

Beitrag von Macros »

Zusatz: nutze bitte die CodeTags.

Einfach vor dem Einfügen von Code auf den
gleichnamigen Button klicken, und danach nochmal.



schau dir das mal an:

Code: Alles auswählen

Debug DesktopMouseX()
Repeat 
If GetAsyncKeyState_(#VK_LBUTTON) &$80000000 
a+1
Debug a
EndIf
Until a=10
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

afaik sind diese mouse und keyboard-geschichten für die screen-oberfläche.
wenn du also keinen screen benutzt, kann es sein, das ExamineMouse() nicht reagiert,
und dann bleibt er ewig in der schleife, weil er den click garnicht wahrnimmt.

für die desktop oberfläche gibt es glaubich andere befehle um die maus abzufragen...
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
Macros
Beiträge: 1361
Registriert: 23.12.2005 15:00
Wohnort: Olching(bei FFB)
Kontaktdaten:

Beitrag von Macros »

@ Alteingesessenen Kaeru Gaman:
Erst lesen, dann Posten ;-)
Andre123
Beiträge: 10
Registriert: 30.03.2006 20:59

Beitrag von Andre123 »

Wo kann man den diese win-api sachen (auf deutsch) nachlesen

was macht z.b. dieser befehl
GetAsyncKeyState_(#VK_LBUTTON)
oder was bedeutet das?
&$80000000
also mit diesem api hab ich noch nix gemacht wo kann ich das in deutsch nachlesen?
Benutzeravatar
Macros
Beiträge: 1361
Registriert: 23.12.2005 15:00
Wohnort: Olching(bei FFB)
Kontaktdaten:

Beitrag von Macros »

In Deutsch kenne ich keine Gute Seite.

GetAsyncKeyState_(#VK_LBUTTON) überprüpf, ob die Linke (#vk_Lbutton)
Maustaste gerückt ist.
&$80000000 prüft die einzelnen Bits auf übereinstimmung.
Das erste zeigt, ob die Taste gedrückt wurde, oder schon gedrückt war.
Dein Programm soll ja nicht jeden Klick 1000-fach aufnehmen.
Andre123
Beiträge: 10
Registriert: 30.03.2006 20:59

THX THX THX

Beitrag von Andre123 »

!!!!!vielen vielen Dank für deine hilfe!!!!! :)
ähm kanste mir sagen wo ich das nachlesen kann?
wens nich get halt auf englisch! aba naja mal sehn!

also ich hab mir das mal angeguckt und das get irgendwie nich!
also ich krig nich hin das er die taste "v" oder "u" drückt!
gibt es den nix was einfacher is als das was der da gemacht hatt?

also es funktioniert bis jetzt alles bis auf das mit der Tastatur!
Andre123
Beiträge: 10
Registriert: 30.03.2006 20:59

Beitrag von Andre123 »

hmm also ich hab noch nen bischen rumprobiert und bemerkt , das wen
ich mit dem programm einen rechtsklick ausführe wodurch sich auch die
liste öfnet. Aber ich kann selbst wen ich selber die schnelltaste auslöse nicht die
funktion anwehlen die in der liste is! nur wen ich danach die Maus dorthin bewege und draufklicke get das!

also rechtsklick ---> liste taucht auf ----> v (schnelltaste vom menüpunkt)

also ligt das jetzt doch an der maus glaub ich naja solangsam krig ich
echt argh :?

:|
Benutzeravatar
benpicco
Beiträge: 391
Registriert: 01.10.2004 15:32
Wohnort: im Code
Kontaktdaten:

Beitrag von benpicco »

Nachlesen kannst du alles in der MSDN library, die kannst du dir auch in form des Plattform SDKs runterladen (wenn du gerade DSL zur hand hast)
Wenn du kein DSL hast, reicht auch die "Lite Version", die es auf der PureBasic Homepage zu downloaden gibt. (Ist zwar "etwas" verhaltet, aber es sollte reichen, hat sich ja nicht viel geändert seit Windows95 ;))

Einen Tastendruck kannst du glaube ich nur simmulieren, wen du eine dementsprechende Nachricht (SendMessage_()) and das entsprechende Fenster schickst. (aber das werd ich morgen mal suchen, äh, heute :coderselixir:)
Johann Wolfgang von Geothe hat geschrieben:Wie dieses oder jenes Wort geschrieben wird, darauf kommt es doch eigentlich nicht an, sondern darauf, daß die Leser verstehen, was man damit sagen wollte.
Andre123
Beiträge: 10
Registriert: 30.03.2006 20:59

^^

Beitrag von Andre123 »

^^ ok danke

naja ich geh dan mal schlafen^^
bis gleich!
Antworten