# Aktuelle Visualisierungsseite erkennen



## isaridum (16 Juli 2021)

Hallo zusammen,
ist es möglich die aktuelle Codesys visualisierungsseiten so darzustellen wie auf den bildern?
Mein Ziel ist es zu erkennt auf welcher Visualisierungsseite man sich befindet indem die aktuelle seite vielleicht dunkler ist als die anderen.
Ist es außerdem möglich das sich die Farbe der Schaltfläche ändert wenn man nur mit der Maus drauf ist, so wie in windows 10.


----------



## asci25 (16 Juli 2021)

Ich bin gerade nicht sicher, ob Dein angedachter Lösungsweg ergibt, was Du erreichen möchtest. Denn wenn Du die aktuelle Seite farblich anders auf den Schirm bringen willst, müsstest Du alle Seiten als Overlay ablegen.

Was Du suchst, ist ein Tab-Control. Nur weiß ich nicht, ob das Codesys im Angebot hat. Suche mal in der Toolbox.

Oder Du zeichnest die anderen Seiten als Fake-Grafik im oberen Bereich.

Wenn Du allerdings deine Visu grafisch ansprechend gestalten willst (z.B. Farbe mit Mouseover ändern), würde ich sagen, solltest Du Dich nicht zu tief in die Codesys-Visu einarbeiten. Da erreichst Du schnell Limits.

Das ist einer der Gründe, warum ich diese nicht verwende.


----------



## holgermaik (16 Juli 2021)

isaridum schrieb:


> Ist es außerdem möglich das sich die Farbe der Schaltfläche ändert wenn man nur mit der Maus drauf ist, so wie in windows 10.


Dafür eignen sich die Ereignisse "OnMouseLeave" und "OnMouseEnter"

Ein Tab-Control bring Codesys mit: "Registerkarten"
Allerdings verstehe ich nicht ganz was du erreichen möchtest.


----------



## asci25 (16 Juli 2021)

holgermaik schrieb:


> Dafür eignen sich die Ereignisse "OnMouseLeave" und "OnMouseEnter"


Ich habe das gerade spaßeshalber mal ausprobiert. Ja, das funktioniert.

Aber erwarte nicht zu viel. Es dauert ungefähr eine Sekunde, bis der Farbumschlag dargestellt wird. Das sieht dann schon etwas strange (seltsam) aus. Ich habe auch mal mit dem Visutask experimentiert, aber schneller wird es nicht.

Das "Registersteuerelement" scheint aber vielleicht das zu sein, was Du willst - mit einigen Einschränkungen natürlich).

Nur "grafics and behavior like Windows", dass wird mit Codesys nicht gehen.


----------



## isaridum (19 Juli 2021)

Registersteuerelement ? Tab-Control? wie genau mache ich das, es wäre wirklich sehr nett wenn mir das noch jemand erklären konnte?
Ich danke euch für eure Antworten


----------



## asci25 (19 Juli 2021)

Du legst für jeden Tab-Inhalt und das Registersteuerelement selbst je ein eigene Visualisierungsseite an. Also insgesamt 6 Seiten. Auf den ersten 5 Seiten gruppierst Du alles, was zu "Main", "Drive 1-3" und "Tripod" gehört.
Auf der sechsten Seite platzierst Du das Registersteuerelement. Dann legtst Du Dir 5 Tabs an und nennst die "Main", "Drive 1-3" und "Tripod" und ordnest jedem Tab die entsprechende Visualisierungsseite zu. Starte die Visualisierung mit dieser Seite. Fertig.


----------



## isaridum (19 Juli 2021)

Mit gruppieren meinst du im prinzip kopieren ? oder meinst du einfach nur die Visualisierungsnamen ?


----------



## asci25 (19 Juli 2021)

Mit Gruppieren meine ich das Platzieren der Steuerelemente, die Du für diese Gruppe brauchst.


----------



## isaridum (21 Juli 2021)

Habe jetzt 6 Seiten Erstelt und mit hilfe bezeichnet. Ich verstehe leider nicht ganz was ich mit der Registerelement mache muss das jetzt so aussehen. Bin noch neu in CODESYS deshalb fällt mir das etwas schwer deiner beschreibung zu folgen


----------



## asci25 (21 Juli 2021)

Vorwort:
Nichts für ungut. Ob das der richtige Weg zu Deiner Lösung ist. weiß ich natürlich nicht mit Sicherheit. Jedoch lassen Deine Screenshots im Eröffnungspost so was erahnen. Mach mich also nicht verantwortlich, wenn es nicht das ist, was Du suchst. Ich benutze das Codesys-Hmi auch nicht für normale Projekte, weil es meiner Meinung nach überhaupt nicht die Leistungsfähigkeit mit bringt, die ich von einer HMI-Anwendung erwarte. Für Dich mag es hier reichen - ich habe aber kaum Erfahrung damit.

So nun zu Hilfestellung:
Mache doch mal eine neue Seite auf und platziere dort das Registersteuerelement so groß wie möglich. Es muss auf jeden Fall größer sein, als der Seiteninhalt der vorbereiteten Seiten. Wo Du das Registersteuerelement findest, weißt Du?

Dann legst so viele Tabs an, wie Du brauchst. Beschriftest die und ordnest je Tab eine deiner vorbereiteten Seiten zu.
Tab1: Beschriftung "Main", Seite "main"
Tab2: Beschriftung "Drive 1", Seite "drive 1"
usw.
Das machst Du im Eingenschaften-Dialog rechte Seite, wenn das Registersteuerelement markiert ist.

Dann solltest Du ganz schnell sehen, wie der Hase läuft.


----------



## isaridum (21 Juli 2021)

Quatsch alles gut, ist liegt ja alles in meiner verantwortung ich bin sehr dankbar für die hilfe. 

Also :
schritt 1. ich lege eine neue Visualisierungseite an 
schritt 2. in dieser Visualisierungsseite lege ich das registersteuerelement an (siehe bild)
hier meine erste frage was gebe ich da für eine Visualisirung an ?
was genau bewirkt das Registerstuerelement also was ist seine aufgabe, wozu dient es?
Und mit Tab meinst du die schaltfläche wo welche ich drive 1-3, tripod_visu und main benannt habe richtig. 

Es tut mir leid, leider raff ich es nicht ganz deshalb will ich es umso mehr verstehen, wie ich das mache.


----------



## asci25 (21 Juli 2021)

Das Registersteuerelement ist quasi wie ein umschaltbares Fenster auf die zugeordneten Visualisierungsseiten.

Der Weg ist gut. Mach des Registersteuerelement größer - viel größer und dann füge die Visualisierungen so hinzu:




Beobachte das Registersteuerelement und ziehe Deine Schlüsse.

Keine Angst, es geht nichts kaputt, wenn Du ein wenig rumexperimentierst.


----------



## isaridum (21 Juli 2021)

Jetzt hab ich es verstanden es verstanden vielen Dank !!


----------



## isaridum (21 Juli 2021)

Das was ich gerade mit dem Registersteuerelement erstellt habe nennt man dann wohl ein Tab-Control.
Wie genau kriege ich das nun mit dem ,, Ereignisse "OnMouseLeave" und "OnMouseEnter" " hin oder ist das doppelt gemoppelt da ich jetzt das registersteuerelement benutzte ?


----------



## isaridum (26 Juli 2021)

holgermaik schrieb:


> Dafür eignen sich die Ereignisse "OnMouseLeave" und "OnMouseEnter"
> 
> Ein Tab-Control bring Codesys mit: "Registerkarten"
> Allerdings verstehe ich nicht ganz was du erreichen möchtest.


was genau gebe ich in "OnMouseLeave" und "OnMouseEnter" ein ?


----------



## holgermaik (26 Juli 2021)

Du machst dir eine Variable vom Typ Bool(GVL oder POU) die du bei Leave auf True setzt und bei Enter auf False.
Mit der Variable kannst du jetzt zwischen Normal- und Alarmfarbe wechseln. Eintragen unter Farbvariable beim gewünschten Steuerelement.


----------



## isaridum (26 Juli 2021)

Das mit der Alarmfarbe ist perfekt vielen dank, hätte nicht gedacht das es so funktioniert.


----------

