IPSView

Die alternative Visualisierung für IP-Symcon

View Bereich mit Codeeingabe schützen

Posted 2 Jahren ago by brownson

Ähnlich dem Vorgehen zum Code geschützten Ein- und Ausschalten einer Alarmanlage, kann man auch den Schutz eines View Bereiches realisieren.

IPSView_ViewProtection_Console1

Folgendes Skript beinhaltet die komplette Programmlogik und erzeugt nach dem erstmaligen Ausführen auch alle benötigten Variablen:

 

Zusätzlich zu dem Script für die Alarmanlage, gibt es hier noch eine Variable Hidden, mit der man die Sichtbarkeit von Bedienelementen steuern kann. Der Wert der Variable ist immer die Umkehrung der Statusvariable.

Integration in IPSView:

Im Designer öffnet man nun die Seite der View die man mit einer Codeeingabe schützen möchte. Ich habe ich als anschauliches Beispiel einfach mal den Floorplan meines Erdgeschosses verwendet:

IPSView_ViewProtection_DesignerStart

Nun platziert man ein Label über die komplette Seite und setzt die ID der Variable „Hidden“ im Property „Variable Versteckt“. Dieses Label sorgt dafür, dass man auf der Seite nichts bedienen kann, wenn keine Codeeingabe erfolgt ist. Durch die leichte Transparenz der Hintergrundfarbe sieht man die Steuerelemente im Hintergrund im Client dann noch.

IPSView_ViewProtection_DesignerBack

ACHTUNG: Der Designer beherrscht keine Anzeige von Transparenten Steuerelementen, im Client werden sie allerdings korrekt dargestellt.

Über dieses Label platziert man nun die Elemente für die Codeeingabe, analog wie es bereits bei der Steuerung der Alarmanlage beschrieben wurde.

IPSView_ViewProtection_DesignerButton1 IPSView_ViewProtection_DesignerLabel

Zusätzlich wird hier allerdings bei jedem Element das Property „Variable Versteckt“ gesetzt. Diese Fernsteuer Option gewährleistet, dass die Steuerelemente nur sichtbar sind, wenn eine Codeeingabe erforderlich ist.

IPSView_ViewProtection_DesignerButtonOn

Zum Abschluss muss jetzt noch eine Kopie des ToggleButtons zum Ein/Ausschalten im Bereich der zu schützenden Steuerelemente platziert werden. Dieser ist erforderlich, damit man den Schutz auch wieder aktivieren kann.

Das Bearbeiten der Elemente die sich im Hintergrund (also hinter dem Label das sich über die gesamte Seite erstreckt) ist etwas tricky. Am praktikabelsten ist es, wenn man die entsprechenden Elemente markiert und über das Kontext Menü die Option „In den Hintergrund senden“ bzw. „In den Vordergrund holen“ wählt.

IPSView_ViewProtection_ExampleOn IPSView_ViewProtection_ExampleOff

 

 

 

This entry was posted in HowTo, Skripte and tagged , , , . Bookmark the permalink.