Probleme mit MoveMouse

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

Seoman

Betreff: Probleme mit MoveMouse

BeitragMo, Jul 19, 2004 21:27
Antworten mit Zitat
Benutzer-Profile anzeigen
So, ich nerve mal wieder...
Was mache ich beim folgenden Code falsch?

Code: [AUSKLAPPEN]

MausX = MouseX()
MausY = MouseY()

If MausX = 640 Then
MausX = 1
MoveMouse 1, MausY
EndIf

If MausX = 0 Then
MausX = 639
MoveMouse 639, MausY
EndIf


Die Mausdrehung nach links geht einwandfrei, die nach rechts aber leider nicht.
Ich habe auch schon probiert statt
MoveMouse 1...

MoveMouse -639...
zu nehmen, geht aber leider auch nicht Crying or Very sad
Wisst ihr, was da falsch ist...?

Danke im Voraus
Seoman

EDIT:
Bitte helft mir!!!!!!!

Rallimen

Sieger des 30-EUR-Wettbewerbs

BeitragMo, Jul 19, 2004 22:42
Antworten mit Zitat
Benutzer-Profile anzeigen
wenn du deinen Grafikmodus auf 640 Punkte gesetzt hast geht auf keinen fall, da der der xwert höchstens bis 639 geht, weil von 0 an gerechnet wird und 640 schon ausserhalb des Bildes ist!
[BB2D | BB3D | BB+]

Markus2

BeitragMo, Jul 19, 2004 23:49
Antworten mit Zitat
Benutzer-Profile anzeigen
Besser wäre evtl. auch
IF (640-MausX) < 10 THEN MoveMouse 10, MausY

Seoman

BeitragDi, Jul 20, 2004 8:44
Antworten mit Zitat
Benutzer-Profile anzeigen
@Rallimen
Ich hatte schon Versionen mit 630 ausprobiert, hilft jedoch auch nichts.

@Markus2
Wieso weiß ich nicht, aber deine Methode funktioniert! Danke!!!!!!!!!

mfg
Seoman

Markus2

BeitragDi, Jul 20, 2004 12:36
Antworten mit Zitat
Benutzer-Profile anzeigen
@Seoman

Das ist quasi ein Bereich am Rand von 10 Pixeln und wenn da die
Maus rein kommt springt sie eben zum linken Rand .
Also nix anderes als eine toleranz Wink

Seoman

BeitragDi, Jul 20, 2004 13:45
Antworten mit Zitat
Benutzer-Profile anzeigen
Aber worin besteht der Unterschied zwischen

Code: [AUSKLAPPEN]

If (640-MausX) < 10


Und...

Code: [AUSKLAPPEN]

If MausX > 630


Dass 640 - MausX kleiner als 10 ist, setzt doch voraus, dass MausX größer als 630 ist...
 

Edlothiol

BeitragDi, Jul 20, 2004 13:47
Antworten mit Zitat
Benutzer-Profile anzeigen
Hast du wirklich Code: [AUSKLAPPEN]
MausX > 630
und nicht Code: [AUSKLAPPEN]
MausX = 630
geschrieben? Ansonsten seh ich da auch keinen Unterschied.
 

zimtstern#3

BeitragDi, Jul 20, 2004 14:16
Antworten mit Zitat
Benutzer-Profile anzeigen
Das läuft:
Code: [AUSKLAPPEN]

MausX = MouseX()
MausY = MouseY()

If MausX = 639 Then
MausX = 1
MoveMouse MausX, MausY
EndIf

If MausX = 0 Then
MausX = 638
MoveMouse MausX, MausY
EndIf


Embarassed seh grad es htte sich schon erledigt

Seoman

BeitragDi, Jul 20, 2004 14:38
Antworten mit Zitat
Benutzer-Profile anzeigen
@Edlothiol

Nicht in dem hier veröffentlichten Beispiel, abe probiert hatte ich es. Trotzdem gab es rigendwelche Probleme *grübel* Aber jetzt geht es ja.

mfg
Seoman

Markus2

BeitragDi, Jul 20, 2004 23:26
Antworten mit Zitat
Benutzer-Profile anzeigen
Sieht in wirklichkeit so aus

If (GraphicsWidth()-MausX) < 10
If MausX>(GraphicsWidth()-10)

darum mache ich das immer so und man sieht direkt
das man 10 Pixel vom Rand weg ist .
Also du solltest deine Programme unabhängig von
der Fensterauflösung machen Wink

Seoman

BeitragMi, Jul 21, 2004 14:06
Antworten mit Zitat
Benutzer-Profile anzeigen
Merk ich mir!
Danke!

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group