nun gehts weiter mit dem Keybinder aus Tutorial 2.1.
Wir erstellen uns noch einen weiteren Button und nennen unser Label 1 -> Taste 1, bei Input 1 machen wir aus "Input1" -> ""
Nun erstellen wir uns eine Funktion, die unseren Keybinder startet:
Funktionen beginnen zur Übersicht mit einem _
Code:
func _Starten() endfunc
Code:
If WinExists("GTA:SA:MP") Then
MsgBox(0, "", "Keybinder gestartet")
$gestartet = true ; wir erstellen noch am Anfang die Variable mit Dim $gestartet
Else
MsgBox(0,"","Keybinder konnte nicht gestartet werden, GTA:SA:MP ist nicht offen.")
Endif
Nun haben wir unsere Starten-Funktion.
Und vergisst nicht: Am besten nach jeden paar Schritten mal euer Programm Starten (F5) oder Tools -> Go
Jetzt geht es an das Speichern der Felder (Inputs) und das ausgeben von den Nachrichten.
Wir erstellen uns noch eine Funktion und Speichern den Text aus den Inputs in eine Datei, die im Verzeichnis des Scriptes liegt.
Code:
func _Speichern() IniWrite($configfile,"Keybinder","1",guictrlread($Input1)) #cs Parameter 1: Die Datei, wir definieren sie mit $configfile = @ScriptDir & "\Config.ini" am Anfang des Scriptes. Parameter 2: Die Sektion in der .ini Datei Parameter 3: Der Key in der .ini Datei Parameter 4: Der Text, der in die Datei geschrieben werden soll. Die Datei sieht dannach so aus: [Keybinder] 1=tText von Taste 1 #ce EndFunc
Nun weisen wir unseren 2 Buttons 2 Funktionen zu, dies machen wir indem wir nach
Code:
Case $GUI_EVENT_CLOSE Exit
Code:
Case $button _Starten() Case $button2 _Speichern()
Nun wollen wir aber noch, dass unsere .ini beim Programmstart ausgelesen wird, dies machen wir mit IniRead, die Parameter sind (fast) die gleichen wie bei IniWrite.
Code:
If FileExists($configfile) Then $1 = IniRead($configfile,"Keybinder","1",""); parameter: Dateiname | Sektion | Key | Der Wert, der angegeben soll, wenn der Key nicht gefunden wird guictrlsetdata($input1, $1) Endif
Das ganze macht ihr mit dem 2ten Key und Inputfeld.
Dieser Code kommt am besten nach #EndRegion ### END Koda GUI section ###.
Nun gehts an das Schreiben.
Code:
HotKeySet("1","_1")
Die Funktion dazu lautet nun
Code:
func _1()
if $gestartet = true AND WinActive("GTA:SA:MP") Then ;wenn gestartet = ja UND gta:sa:mp fenster aktiv, dann
ControlSend("GTA:SA:MP", "", "", guictrlread($input1)) ;parameter: titel | text, der in unserem fenster steht (bei uns keiner) | Die ControlID an die es gesendet werden soll (bei uns auch keine) | und der Text, der gesendet werden soll
Endif
endfunc
Das wars erstmal, bis zum nächsten Tutorial.
Hier nochmal der Code bis jetzt:
Musste es verkleinern damit alles reinpasst






