KeyDown und MouseDown "simulieren"
Übersicht BlitzBasic DLLs und Userlibs
Jean |
Fr, Apr 20, 2007 15:12 Antworten mit Zitat |
|
---|---|---|
Mir scheint so, als würden die meisten Maus Funktionen nicht richtig funktionieren. Also das mit den absoluten Positionen läuft schon mal gar nicht und wenn ich die Maus verschieben möchte stimmt die neue Position überhaupt nicht.
Hier ein Beispiel: (B+) Code: [AUSKLAPPEN] Const ME_LDOWN = $2 ;Linke Maustaste drücken Const ME_LUP = $4 ;Linke Maustaste loslassen Const ME_MDOWN = $20 ;Mittlere Maustaste drücken Const ME_MEUP = $40 ;Mittlere Maustaste loslassen Const ME_MOVE = $1 ;Maus bewegen Const ME_ABSOLUTE = $8000 ;Absolute Mauskordinaten bei Bewegung Const ME_RDOWN = $8 ;Rechte MAustaste drücken Const ME_RUP = $10 ;Rechte Maustaste loslassen ChangeMouse ME_MOVE,MouseX()*-1,MouseY()*-1,0,0 ;Maus auf 0 Position legen For x = 1 To 100 ChangeMouse ME_MOVE,1,0,0,0 ;Maus um 1X verschieben Print "Sollte: " + x + " Ist: " + MouseX() Next WaitKey Kann mir jemand sagen was ich an der ganzen Sache falsch mache? THX |
||
Smily |
Fr, Apr 20, 2007 15:44 Antworten mit Zitat |
|
---|---|---|
Wahrscheinlich nutzt das Programm irgendeine andere Einheit statt pixel.
Das verhältnis zur Angegebenen Poition zu anderer-Poition ist ungefähr 0,38 Gruß, Smily0412 |
||
Lesestoff:
gegen Softwarepatente | Netzzensur | brain.exe | Unabhängigkeitserklärung des Internets "Wir müssen die Rechte der Andersdenkenden selbst dann beachten, wenn sie Idioten oder schädlich sind. Wir müssen aufpassen. Wachsamkeit ist der Preis der Freiheit --- Keine Zensur!" stummi.org |
Jo0oker |
Do, Nov 15, 2007 22:13 Antworten mit Zitat |
|
---|---|---|
Hallo, gefällt mir nur wie kann ich das ganze jetzt auch bei einem spiel anwenden?
Also, starte mein kleines Programm, welches ein Spiel startet. Und jetzt soll mit hilfe meines Programmes das spiel gesteuert werden. Warum geht das nicht? lg Jo0oker |
||
Tehadon, das kostenlose 3D RPG
www.tehadon.de http://www.blitzforum.de/worklogs/14/ Das Abenteuer wird beginnen! |
draco |
Sa, Nov 17, 2007 0:05 Antworten mit Zitat |
|
---|---|---|
bei der decls für die mousebefehle wird bei mir angezeigt: error in userlib "mouse_event_klick.decls" - duplicate identifer... was soll das bedeuten?
/Edit: Oh sorry, hatte dieselbe decls nochmal, wegen mausverschiebung, dachte das wär ne andere... hat sich geklärt nochmal sorry... |
||
Der Eisvogel |
Do, Jan 24, 2008 20:30 Antworten mit Zitat |
|
---|---|---|
Hallo
bei funktioniert der Virtuelle Tastendruck nicht. Code: [AUSKLAPPEN] Const VK_LEER = 32
Const KEYEVENTF_KEYUP = $2 Presskey(VK_LEER,0,0,0) Repeat Cls Color Rnd(0,255),Rnd(0,255),Rnd(0,255) Rect Rnd(0,100),Rnd(0,100),Rnd(10,50),Rnd(10,50) If KeyDown(57) Then Color Rnd(100,255),Rnd(100,255),Rnd(100,255) Rect 10,10,50,50 EndIf Until KeyHit(1) Presskey(VK_LEER,0,KEYEVENTF_KEYUP,0) End Also, bei diesem Code sollen Rechtecke gezeichnet werden, die bei jedem Schleifendurchlauf die Farbe, die Position und die Größe wechseln. Soweit sogut, wenn jetzt noch die Leertaste gedrückt wird dann soll ein Rechteck gezeichnet werden, das nur die Farbe ändert. Die Leertaste soll durch den virtuellen Tastendruck simuliert werden, aber das funktioniert bei mir leider nicht. Warum? |
||
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB Projekte: Window-Crasher Ich liebe es mit der WinAPI zu spielen. |
BladeRunnerModerator |
Do, Jan 24, 2008 20:42 Antworten mit Zitat |
|
---|---|---|
Weil dein virtueller Tastendruck erst kommt wenn die Schleife beendet wurde. | ||
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3 Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64 B3D BMax MaxGUI Stolzer Gewinner des BAC#48, #52 & #92 |
Der Eisvogel |
Do, Jan 24, 2008 20:45 Antworten mit Zitat |
|
---|---|---|
Auf der ersten Seite steht im 3. Beitrag das "0" für den Anschlag(Taste drücken) ist und "2" für loslassen.
EDIT: Am Anfang meines Codes steht: Code: [AUSKLAPPEN] Presskey(VK_LEER,0,0,0)
Das bedeuted meinesachtens das die Taste gedrückt wird. Nach der Schleife wird sie dann wieder losgelassen, oder nicht? |
||
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB Projekte: Window-Crasher Ich liebe es mit der WinAPI zu spielen. |
BladeRunnerModerator |
Do, Jan 24, 2008 20:51 Antworten mit Zitat |
|
---|---|---|
ah, i see. Dann weiss ich es nicht. | ||
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3 Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64 B3D BMax MaxGUI Stolzer Gewinner des BAC#48, #52 & #92 |
Der Eisvogel |
Do, Jan 24, 2008 20:53 Antworten mit Zitat |
|
---|---|---|
Hast du nen anderen Code mit dem es bei dir funktioniert?
P.S. Ich habe B3D. |
||
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB Projekte: Window-Crasher Ich liebe es mit der WinAPI zu spielen. |
The_Nici |
Sa, Feb 23, 2008 14:45 Antworten mit Zitat |
|
---|---|---|
Hallo,
die Funktionen sind sehr geil, danke! =) Jedoch habe ich ein Problem: Sobald das Fenster im Hintergrund ist, funktioniert das ganze nichtmehr. Könnte man das sozusagen versteckt immer im Vordergrund laufen lassen oder sonstwas? |
||
Der Eisvogel |
Sa, Feb 23, 2008 15:37 Antworten mit Zitat |
|
---|---|---|
Kannst du mir deinen Code mal geben, ich hab des nämlich immernoch net geschaft. | ||
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB Projekte: Window-Crasher Ich liebe es mit der WinAPI zu spielen. |
The_Nici |
Sa, Feb 23, 2008 15:58 Antworten mit Zitat |
|
---|---|---|
Den willst du garnich erst sehen. Oo
Nunja, Die Konstanten sind schon in deinem Code, oder? |
||
Der Eisvogel |
Sa, Feb 23, 2008 17:34 Antworten mit Zitat |
|
---|---|---|
Hier mein Code: [AUSKLAPPEN] Const VK_LEER = 32
Const KEYEVENTF_KEYUP = $2 Repeat Cls Presskey(VK_LEER,0,0,0) Color Rnd(0,255),Rnd(0,255),Rnd(0,255) Rect Rnd(0,100),Rnd(0,100),Rnd(10,50),Rnd(10,50) If KeyDown(57) Then Color 255,0,0 Rect 10,10,50,50 EndIf Until KeyHit(1) Presskey(VK_LEER,0,KEYEVENTF_KEYUP,0) End |
||
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB Projekte: Window-Crasher Ich liebe es mit der WinAPI zu spielen. |
judos |
Di, März 11, 2008 20:58 Antworten mit Zitat |
|
---|---|---|
hallo zusammen,
also ich finde die funktionen auch ganz schön geill einziges problem bei mir: die absolute verschiebung der maus funktioniert auch nicht... die relative verschiebung habe ich noch nicht überprüft, was es für eine Einheit benützt... mfg judos |
||
pirahni |
Sa, März 22, 2008 15:01 Antworten mit Zitat |
|
---|---|---|
Hi, ich kann noch kein Urteil fällen. ich habe das Beispiel übernommen und auch die dll eingebunden nur... bei mir kommt sofort nach dem start:
expecting end-of-file hat da wer ne idee? |
||
Leicht verständliche Informatiktutorials:
http://www.youtube.com/VascoLange |
judos |
Mi, März 26, 2008 16:24 Antworten mit Zitat |
|
---|---|---|
wahrscheinlich hast du noch en fehler im code oder so...
beim kopieren kommen oft noch unerwünschte zeichen rein... mfg judos |
||
Übersicht BlitzBasic DLLs und Userlibs
Powered by phpBB © 2001 - 2006, phpBB Group