Donnerstag, 28. Mai 2015

Eine Schaltfläche (Button) für die Sprachumschaltung

Visualisierungen, die nur mit einer Sprache projektiert sind, benötigen für die Sprachumschaltung häufig ein Interaktionselement, um die Sprache umschalten. Bei Touch Bedienkonzepten können dies eine oder mehrere Schaltflächen im Bereich der Systemverwaltung sein.

Mit einer Schaltfläche wird zwischen den Sprachen gewechselt, d.h. jeder Tastendruck wechselt zur nächsten Sprache.

Alternativ kann für jede Sprache eine eigene Schaltfläche angelegt werden. Damit kann jede Sprache direkt ausgewählt werden. Wenn viele Sprache vorhanden sind, steigt der Platzbedarf und es wird schnell unübersichtlich.

Ich möchte mich im folgenden nur mit einer Schaltfläche für die Sprachumschaltung beschäftigen, die jeweils zur nächsten Sprache umschaltet. Wenn alle Sprachen durchgeschaltet wurden, wird wieder von vorne begonnen. Auf der Schaltfläche soll dabei immer eine Flagge für das Land der folgenden Sprache angezeigt werden.

Obwohl das Konzept der Darstellung von Sprachen durch Flaggen immer problematisch ist (bspw. Englisch: Flagge USA und/oder Großbritannien?) und Flaggen bei monochromen Bildschirmen oft nicht unterscheidbar sind, haben sich Flaggen als pragmatisches Konzept zur Sprachunterscheidung etabliert.

Also weiter, es soll eine Schaltfläche für die Umschaltung zwischen den Sprachen „Deutsch“,„Englisch“,„Italienisch“ und „Russisch“ projektiert werden. Wenn die aktuelle Sprache „Deutsch“ ist, soll auf der Schaltfläche die englische (Großbritannien) Flagge gezeigt werden. Damit ergibt sich die folgenden Auflistung:

  • Deutsch: Englische (Großbritannien) Flagge
  • Englisch: Italienische Flagge
  • Italienisch: Russische Flagge
  • Russisch: Deutsche Flagge


Für eine Demo nehme ich TIA V13, es funktioniert in anderen Versionen aber ähnlich.

Ich gehe davon aus, dass in der Projektierung bereits die Sprachen angelegt sind, ansonsten können diese unter Sprachen & Ressourcen, Projektsprachen angelegt werden.

In einem beliebigem Bild, hier „Systemverwaltung“ lege ich eine neue Schaltfläche an. Das Verhältnis der Breite zur Höhe der Schaltfläche sollte zu dem vorhandenen Layout passen. Wenn das Verhältnis frei gewählt werden kann, ist 3:2 optimal, die Flaggen sind in diesem Verhältnis angelegt.
Schaltfläche hinzugefügt


Bei den Eigenschaften der Schaltfläche wird als Modus Grafik und für die Eigenschaft Grafik wird Grafik ausgewählt, siehe auch folgendes Bild.
Eigenschaften Modus: Grafik und Grafik: Grafik


Dann müssen die Flaggen hinzugefügt werden. Die Grafiken für die Flaggen sind im TIA Portal enthalten, müssen nach der Installation aber noch aus einer zip-Datei entpackt werden. Das Flaggenverzeichnis lautet:
C:\Program Files (x86)\Siemens\Automation\Portal V13\lib\Graphics\Basic symbols\Flags\

Für die Flaggen wird unter Sprachen & Ressourcen in die Grafiksammlung gewechselt und auf Hinzufügen geklickt. Im Explorer wird in das Flaggenverzeichnis ausgewählt und die Flagge von Großbritannien hinzugefügt. Da die erste Flagge gleichzeitig die Standardflagge ist, erscheint sie für alle Sprachen. Für die weiteren Sprachen kann mit dem Kontextmenü Ersetze mit Grafik die richtige Flagge ausgewählt werden. Da in einer Sprache die Flagge der nächsten Sprache angezeigt werden soll, ist bei Deutsch die Flagge von Großbritannien, bei Englisch die Flagge von Italien, usw… auszuwählen. Der Eintrag in der Grafiksammlung bekommt noch einen sprechenden Namen, bspw. FlagForLanguage.
"Ersetze Grafik"

So sollte die Grafik für die Sprachen aussehen!


Jetzt geht es wieder zurück zur Schaltfläche, um die Grafik zu verbinden. Im Eigenschaftenfenster wird für Grafik, wenn Schaltfläche nicht gedrückt die gerade angelegte Grafik FlagForLanguage ausgewählt. Unter Ereignisse, Klicken kann unter Funktion hinzufügen die Funktion SetzeSprache mit der Eigenschaft Umschalten ausgewählt werden.
Grafik mit Schaltfläche verbinden
Funktion für Schaltfläche hinzufügen


Das war es schon, in der Simulation kann das Ergebnis gleich begutachtet werden. Falls nicht alle Sprachen verfügbar sind, müssen unter den Runtime-Einstellungen des Panels die Sprachen aktiviert werden. Auch kann hier die Reihenfolge der Sprachen festgelegt werden.
Sprachen für Panel aktivieren und Reihenfolge festlegen