[GUI|Problem] Maus bewegen auf Knopfdruck

05/30/2012 08:50 piper332#1
Hey, ich wollte meine Maus zu den Koordinaten bewegen lassen, die in die Inputs eingegeben wurden. Das funktioniert aber iwie nicht. Ich weiß nicht, was ich falsch gemacht habe, ich hoffe jmd. von euch weiß es =)
Code:
05/30/2012 09:48 Shrezz#2
So funktioniert es:

Nur verstehe ich nicht
Code:
Case $Mausz = 4
, was willst du damit bezwecken?
05/30/2012 14:49 piper332#3
Naja.. Wenn man Das mit dem Tooltip an hatte und den Haken dann bei der Checkbox weg macht, bleibt der einfach stehn und zeigt die letzten Werte an.
Damit wird der halt weg gemacht...
Wusste nicht, wie ich es anders Lösen sollte, klappt aber..
Danke Erstmal.. ich versuch zu verstehn wo der Fehler war =P
05/30/2012 17:19 Shrezz#4
Edit: KDeluxe hat die richtige Lösung!
05/30/2012 18:52 KDeluxe#5
Quote:
Originally Posted by Shrezz View Post
Nur verstehe ich nicht
Code:
Case $Mausz = 4
, was willst du damit bezwecken?
4 entspricht $GUI_UNCHECKED, der zurückgegebene Status/Wert von GUICtrlRead(), wenn eine Checkbox nicht ausgewählt wurde. Warum er das macht hat er ja schon geschrieben.


Kommen wir mal zur einfachen Lösung:
Alles geändert werden musste war die Positionierung der Abfrage, ob $msg gleich $but ist.
Der Fehler bestand darin, dass die Abfrage, ob $msg gleich $but ist, nach der Überprüfung der Checkbox kam. Die Checkbox kann in diesem Fall 2 Werte annehmen, einmal $GUI_CHECKED (1) und $GUI_UNCHECKED (4). Da einer dieser beiden Bedingungen immer erfüllt wird, werden unten folgende Case-Statements "ignoriert".

Code:
Case $Mausz
Auf diesen Teil aus Shrezzs Script sollte man auf jeden Fall verzichten. Hier wird abgefragt, ob die Checkbox den Wert "True" annimmt. "False" entspricht 0, "True" entspricht allen Zahlen mit Ausnahme von 0. Da die Checkbox den Wert 0 nie annimmt, wird das Tooltip nach dem erstellen gleich wieder gelöscht.

Außerdem müsstest du das Flimmern/Flackern der Label schon bemerkt haben. Deshalb solltest du immer ein beachten: Ändere nie etwas unnötig.
Zur CPU Entlastung solltest du außerdem ein kleines Sleep von 10 bis 50 ms Verwenden. Höhere Werte verursachen nur verzögerte Reaktionen der GUI-Elemente.


Hier mal ein Beispiel, wie es besser gemacht ist:
Bei Unklarheiten kannst du dich ja rühren (PNs an mich ignoriere ich übrigens).
05/30/2012 19:05 Shrezz#6
Quote:
Originally Posted by KDeluxe View Post
4 entspricht $GUI_UNCHECKED, der zurückgegebene Status/Wert von GUICtrlRead(), wenn eine Checkbox nicht ausgewählt wurde. Warum er das macht hat er ja schon geschrieben.


Kommen wir mal zur einfachen Lösung:
Alles geändert werden musste war die Positionierung der Abfrage, ob $msg gleich $but ist.
Der Fehler bestand darin, dass die Abfrage, ob $msg gleich $but ist, nach der Überprüfung der Checkbox kam. Die Checkbox kann in diesem Fall 2 Werte annehmen, einmal $GUI_CHECKED (1) und $GUI_UNCHECKED (4). Da einer dieser beiden Bedingungen immer erfüllt wird, werden unten folgende Case-Statements "ignoriert".

Code:
Case $Mausz
Auf diesen Teil aus Shrezzs Script sollte man auf jeden Fall verzichten. Hier wird abgefragt, ob die Checkbox den Wert "True" annimmt. "False" entspricht 0, "True" entspricht allen Zahlen mit Ausnahme von 0. Da die Checkbox den Wert 0 nie annimmt, wird das Tooltip nach dem erstellen gleich wieder gelöscht.

Außerdem müsstest du das Flimmern/Flackern der Label schon bemerkt haben. Deshalb solltest du immer ein beachten: Ändere nie etwas unnötig.
Zur CPU Entlastung solltest du außerdem ein kleines Sleep von 10 bis 50 ms Verwenden. Höhere Werte verursachen nur verzögerte Reaktionen der GUI-Elemente.


Hier mal ein Beispiel, wie es besser gemacht ist:
Bei Unklarheiten kannst du dich ja rühren (PNs an mich ignoriere ich übrigens).
Ok danke, so hab ich jetzt auch was gelernt(: