Für die Speicherung von Eingaben oder Zwischenergebnissen können Variablen eingesetzt werden. Diese können für Befehlseigenschaften angegeben oder auch in Texten oder Formeln eingesetzt werden. Die Groß-/Kleinschreibung spielt bei ihnen keine Rolle und wird nicht beachtet.
Bei der Eingabe solcher Platzhalter in Befehlseigenschaften hilft die Platzhalter-Automatik.
Variablen im Text werden in eckige Klammern gesetzt (z.B. [Wert]). So eingesetzte Begriffe werden auch Platzhalter genannt, die bei der Ausführung des Skripts jeweils gegen den aktuellen Inhalt ersetzt werden.
Hinweis: Im Namen eigener Variablen dürfen Leerzeichen, Punkte oder Doppelpunkte nicht verwendet werden!
Auch haben :, $, " oder § spezielle Funktionen (s.u.) und können keine Namensbestandteile sein.
Variablen, deren Namen mit zwei Unterstrichen beginnen (z.B. [__MeineVariable]), werden in der Variablenauswahl nicht mit angezeigt.
Variablen, deren Namen mit einem Unterstrich beginnen und enden (z.B. [_Temp_]), werden bei Zurück wieder komplett entfernt (temporäre lokale Variablen).
Es kann auch ein Ausdruck in Anführungszeichen angegeben werden, der dann als Ergebnis zurückgegeben wird (auch ggf. mit § formatiert). Hierbei sind dann auch sonst ungültige Zeichen möglich, etwa ["Ein Test"]. Dies ist etwa für die Formatierung eines festen Werts hilfreich.
Die Angabe [] liefert ein leeres Ergebnis.
Neben den selbst definierten Platzhaltern bzw. Variablen stellt click.EXE eine Vielzahl an Systemplatzhaltern bereit (s.u.), über die Informationen zum laufenden Skript oder das System abgerufen oder Zustände gesetzt werden können. Diese können Zahlenwerte, Texte oder Listen sein.
In den meisten Eigenschaften kann über die F6-Taste eine Variablenauswahl eingeblendet werden, aus der Sie den gewünschten Platzhalter auswählen und in den Dialog einsetzen können.
Variableninhalt mit :X nachbearbeiten
Beim Lesen eines Platzhalters kann auch direkt eine Nachbearbeitung bestimmt werden, indem die entsprechende Funktion mit : getrennt an den Variablennamen angehängt wird.
Ein Beispiel wäre [Variablenname:Länge], wo dann die Länge des Variableninhalts eingesetzt wird.
Auf diese Weise können eigene Zwischenvariablen und Setze-Befehle eingespart werden, auch ist diese Variante oft deutlich schneller.
Eine Übersicht über die möglichen Funktionen finden Sie unter Nachbearbeitungs-Kürzel.
Wahlweise können auch Formatierungsanweisungen hinter dem Variablennamen angegeben werden, jeweils durch das Zeichen § getrennt. So ergibt der Ausdruck [cX.Zeit§hh:mm] die aktuelle Uhrzeit im Format Stunde:Minute.
Gängige Formatierungszeichen sind:
0=Ziffer oder 0, #=Ziffer oder Nichts, #,0=Zahl mit Tausenderpunkten, 0.00=Zahl mit zwei Nachkommastellen, \x=das Zeichen x (beliebig)
hh=Stunde, HH=Stunde im 24-Stunden-Format, mm=Minute, ss=Sekunde, yy oder yyyy=Jahr, MM=Monat, dd=Tag, MMMM=Monatsname, dddd=Tagesname
Zeit-/Datumsformatierung: Wird die Formatierungsanweisung mit zwei § begonnen (§§), wird der Wert als Datum ausgewertet.
(Beispiel: ist [Diff] der Wert "0,5", ergibt [Diff§hh:mm] 00:00, weil dies kein gültiger Datums/Zeitwert ist, dagegen [Diff§§hh:mm] 12:00, also 12 Stunden für einen halben Tag)
Hinweis: Zur Umrechnung von Zeit- und Datumswerten siehe auch [cX.Datum.X]-Platzhalter
Hinweis: Im Variableninspektor kann auch direkt per Mausklick eine Liste mit gängigen Formatierungsanweisungen aufgerufen werden, die dann ausprobiert und direkt eingesetzt werden können.
Eine Auflistung der zahlreichen möglichen Formatierungszeichen finden Sie auch im Netz, etwa die Microsoft-Doku hier für Zahlenwerte oder hier für Datumswerte.
$-Variablen (Dollar-Variablen)
Enthält ein Variablenname ein $-Zeichen (z.B. [Text$]), wird der darin enthaltene Text nicht weiter ausgewertet, also kann er auch z.B. eckige Klammern enthalten (z.B. "Setze in [X$] = [Y]" ergibt den Text "[Y]" in der Variablen, und nicht den Inhalt von Variable Y). Eine Formatierung dieses Ausdrucks ist nicht möglich.
Wird im Ausdruck nur [$] eingesetzt, wird eine weitere Auflösung der nachfolgenden Variablen in dem Ausdruck unterbunden (z.B. für "Meldung '[$]Diese [Klammern] werden angezeigt!'").
Zahlenwerte-Variablen
Endet in einem Ausdruck bzw. eine Bedingung ein Variablenname mit % (z.B. [X%]), so wird als Inhalt eine 0 ausgegeben, wenn die Variable leer ist. Dies ist besonders innerhalb von Rechenoperationen sinnvoll, wenn die verwendeten Variablen nicht mit einem Zahlenwert initialisiert (also leer) sind.
Temporäres "deaktivieren" eines Platzhalters
Soll beim Testen ein Platzhalter vorübergehend nicht ausgewertet werden (wie im Testmodus), etwa weil dieser noch problematisch ist, kann "~~" vor den Namen gesetzt werden. Aus [~~X] wird dann <X>.
Systemplatzhalter
Neben den selbstdefinierten Variablen existieren auch diverse Systemplatzhalter, deren Inhalt vom Programm vorgegeben wird.
Diese beginnen grundsätzlich mit cX. (etwa [cX.Datum] oder [cX.Drucker.Name]). Der Punkt trennt jeweils auch den Platzhalterbereich (das Thema, etwa Datei, Bildschirm, Anzeige, Fenster usw.) von der eigentlichen Eigenschaft (z.B. .Name).
Viele der Systemvariablen können etwa mit dem Setze-Befehl verändert werden, was auch in der Variablenauswahl durch ein entsprechendes Symbol angezeigt wird. Einige können auch nur geschrieben und nicht gelesen werden oder anders herum, was in der Variablenauswahl durch Pfeile angedeutet wird.
Einige dieser Platzhalter können auch Parameter erfordern. Diese werden hinter dem Platzhalternamen in Klammern angegeben.
Manche Platzhalter erfordern einen oder mehrere Parameter (mit Semikolon getrennt), bei anderen sind Standardwerte definiert, welche bei Auslassung der Parameter verwendet werden.
Sollen mehrere Parameter angegeben werden, einer dieser Parameter jedoch selbst ein Semikolon enthält, muss dieser in "" gesetzt werden.
Beispiel: [cX.DatumZeit.Lang] (ohne Parameter) ergibt die lange Darstellung des aktuellen Datums (z.B. "Sonntag, 1. März 2022"). Wird ein Datum mit angegeben, wird dessen Langdarstellung geliefert, etwa [cX.DatumZeit(1.2.2022).Lang] ergibt "Samstag, 1. Februar 2022".
Bei Anzeige-Elementen wird das anzusprechende Element ebenfalls über Parameter adressiert. Ist in den Elementen eine Mutterfenster-ID angegeben, wird diese ebenso verwendet wie die ID des Elements selbst.
Hinweis: Bei verschachtelten Elementen werden die IDs vom Fenster bis zum Element mit . getrennt angegeben, etwa [cX.Anzeige(FensterID).Element(Bild1.ElementeID).X]. Hierbei ist auch die Angabe [cX.Anzeige(FensterID.Bild1).Element(ElementeID).X] gültig. Ist keine Fenster-ID vorhanden, kann auch [.Element(ElementeID).X] als Kurzform geschrieben werden.
Automatisches Hoch-/Runterzählen
Wird beim Lesen einer Werte-Benutzervariablen ++ oder -- angehängt, wird der Variablenwert nach dem Auslesen um 1 erhöht bzw. verringert.
Beispiel: [Zähler1++] oder [Zähler2--]
Siehe auch: [cX.Zähler(Name)]
Es folgt eine Übersicht über eine Auswahl der verfügbaren Systemplatzhalter bzw. Platzhalterbereiche:
Anzeigefenster | Abfragen und Manipulieren von Anzeigefenstern |
Anzeigeelemente | Abfragen und Manipulieren von Anzeige-Elementen |
Audio/Video | Zugriff auf Audio- und Video-Eigenschaften |
Bildschirm | Abfragen von Bildschirmeigenschaften und Mausdaten |
Datei | Datei- und Laufwerksinformationen |
DatumZeit | Datums- und Zeit-Funktionen |
Drucker | Zugriff auf den Drucker |
Editor | Informationen über die Entwicklungsumgebung (nur im Editor gültig) |
Fehlerbehandlung | Informationen über und Behandlung von auftretenden Laufzeitfehlern |
Fenster | Zugriff auf beliebige Windows-Fenster |
Systemplatzhalter | Abfragen und Manipulieren von Systeminformationen und -einstellungen |
Sonstiges | Diverse Platzhalter und Systemwerte |
Umgebung/Skript | Informationen zum Skript und dessen Umgebung |
Platzhalter der Pro-Lizenz | Zusätzliche Platzhalter, die nur mit der Pro-Lizenz zur Verfügung stehen |
Platzhalter der Premium-Lizenz | Zusätzliche Platzhalter, die nur mit der Premium-Lizenz zur Verfügung stehen |
cX-Webseite: http://www.clickexe.net