- Vorwort
- Was benötigen wir?
- GUI und Includes
- Erklärung des Prinzips
- Die Programmierung
- Nachwort
Vorwort:
Hallo Epvp!
Das hier wird der erste Teil, meiner Serie Let's write. Ich schreibe diese 'Tutorials' nicht nur für euch, sonder auch um mir selber AutoIT näher zu bringen.
Dieses Programm wird ein sehr simples, mit der Zeit wird sich dies steigern.
Was benötigen wir?
- AutoIT
- Skype
- Menschenverstand
GUI und Includes
Auf die GUI werde ich nicht wirklich eingehen, da dies meines Erachtens zu den grundlegendsten Sachen gehört. Hier aber mal ein Screenshot von der GUI, die ich mit dem KODA Formdesigner erstellt habe:
Bei den Includes brauchen wir nur die standart GUI Includes.
Erklärung des Prinzips:
Hier haben wir einmal den 'Code' mit dem wir eine Quote in Skype erzeugen können:
Code:
<quote author="SkypeName" authorname="VollerName" timestamp="Timestamp">Text<legacyquote>xxx</legacyquote></quote>
Quote Autor ist der Skypename, zum Beispiel irofl.epvp.
Authorname ist der in Skype angezeigte Name, zum Beispiel iRofl von Epvp
Der Timestamp (sorry wenn ich irre) ist eine Zusammenrechnung(?) von einem Datum. Heute ist der 30.8.2013 und es ist 09:10:56. Als TimeStamp wäre das: 1377846656 (
)Was der Text ist, sollte selbsterklärend sein. Nämlich der Text den wir versenden wollen.
Nun müssen wir also in der Theorie die Textfelder alle auslesen, in Variablen verpacken, und in diesen Code einfügen, welcher dann in die Zwischenablage (Clipboard) gespeichert wird.
Die Programmierung
Ich werde hier den Code von der GUI nur einmal am Ende zeigen, da ihr sonst zuviel scrollen müsst, also nicht wundern (:
Im wesentlichen brauchen wir nur eine Funktion, welche aufgerufen wird, wenn Unser Button (siehe GUI und Includes) gedrückt wird. Ich werde dies aus Prinzip in eine Funktion schreiben, das so die Weiterentwicklung leichter fällt.
Nun, also legen wir uns eine Funktion an.
Code:
Func ReadyText() EndFunc
In der Praxis:
Code:
$NameFakeV = GUICtrlRead($NameFake) $TimeStampV = GUICtrlRead($TimeStamp) $TextV = GUICtrlRead($Text)
Nun Speichern wir unseren 'Quoten-erzeugungs-Code' in eine weitere Variabel, ich nenne sie mal $ClipText.
Code:
$ClipText = "<quote author="SkypeName" authorname="VollerName" timestamp="Timestamp">Text<legacyquote>xxx</legacyquote></quote>"
Nun wird es ein wenig kompliziert. Denn wir müssen Anführungsstriche für die Nicht-Variablen in unserem String nehmen, und in dem String, beziehungsweise um unsere Variablen sind Anfürungszeichen. Deshalb verwende ich hier die ' Anfürungszeichen, welche ihr über der Raute findet.
Code:
$ClipText = '<quote author='&'"'&$NameFakeV&'"'&' authorname='&'"'&$NameFakeV&'"'&' timestamp='&'"'&$TimeStampV&'"'&'>'&$TextV&'<legacyquote>xxx</legacyquote></quote>'
Code:
ClipPut($ClipText)
Code:
Func ReadyText() $NameFakeV = GUICtrlRead($NameFake) $TimeStampV = GUICtrlRead($TimeStamp) $TextV = GUICtrlRead($Text) $ClipText = '<quote author='&'"'&$NameFakeV&'"'&' authorname='&'"'&$NameFakeV&'"'&' timestamp='&'"'&$TimeStampV&'"'&'>'&$TextV&'<legacyquote>xxx</legacyquote></quote>' ClipPut($ClipText) EndFunc
Code:
Case $Generate
ReadyText()
Und unser Skype Quotenfaker ist fertig! Hier zu guter letzt nochmal der ganze Code:
Code:
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=C:\Users\Leon\Desktop\Neuer Ordner\Form Skype Quote.kxf
$Form1 = GUICreate("Skype Quoten Faker", 271, 406, 192, 124)
$Label1 = GUICtrlCreateLabel("Name:", 8, 8, 35, 17)
$NameFake = GUICtrlCreateInput("NameFake", 48, 8, 217, 21)
$Label2 = GUICtrlCreateLabel("Timestamp:", 8, 40, 58, 17)
$TimeStamp = GUICtrlCreateInput("TimeStamp", 72, 40, 193, 21)
$Label3 = GUICtrlCreateLabel("Zu versendener Text:", 80, 88, 106, 17)
$Text = GUICtrlCreateEdit("", 8, 112, 257, 201)
GUICtrlSetData(-1, "Text")
$Generate = GUICtrlCreateButton("Erzeugen!", 8, 320, 257, 57)
$Label4 = GUICtrlCreateLabel("(C) by iRofl on Elitepvpers.", 16, 384, 128, 17)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
Func ReadyText()
$NameFakeV = GUICtrlRead($NameFake)
$TimeStampV = GUICtrlRead($TimeStamp)
$TextV = GUICtrlRead($Text)
$ClipText = '<quote author='&'"'&$NameFakeV&'"'&' authorname='&'"'&$NameFakeV&'"'&' timestamp='&'"'&$TimeStampV&'"'&'>'&$TextV&'<legacyquote>xxx</legacyquote></quote>'
ClipPut($ClipText)
EndFunc
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Generate
ReadyText()
EndSwitch
WEnd
Nachwort
Natürlich ist das nicht das nützlichste aller Programme, aber ich hoffe ich konnte euch weiterhelfen.
Dies ist mein erstes Coding Tutorial, also seit nicht zu hart. Freue mich natürlich auf Konstruktive Kritik und Tipps!
Ich gehe jetzt erstmal Frühstücken.
Auf ein neues, iRofl.






