# Bildnummer auslesen



## Jordy (6 August 2010)

Hi...

Ist es möglich in Flexible die aktuelle Bildnummer auszulesen und in eine Variable zu schreiben?


----------



## Paule (6 August 2010)

Jordy schrieb:


> Hi...
> 
> Ist es möglich in Flexible die aktuelle Bildnummer auszulesen und in eine Variable zu schreiben?


Ja, das geht über die Bereichszeiger.

Kommunikation > Verbindungen > Bereichszeiger > Bildnummer


----------



## Jordy (6 August 2010)

Recht haste!!

Bombig! Danke!!


----------



## Jordy (6 August 2010)

Das Problem dabei ist, dass das ganze nicht schnell genug ist.

Heißt, ich muss die Bildnummer weiter im Panel verarbeiten. Panel schreibt die Bildnummer über Bereichszeiger erstmal in die SPS und ich lese die Bildnummer wieder zurück vom Panel.

Schön wäre, wenn man irgendwie eine Interne Variable vom Panel nutzen könnte dafür...


----------



## Günni1977 (6 August 2010)

hi,
auslegen geht glaub ich nicht, aber kannst dir ja ne interne Variable anlegen und bei jedem Ereignis "Bild aufgebaut" die entsprechende Nummer in die Variable schreiben. oder wenn das zu lange dauert, beim Bildwechsel die neue Nummer in die Variable schreiben...


----------



## Jordy (6 August 2010)

Ja, so hatte ich es vorher auch. Bei Bild aufgebaut, die Nummer in eine interne Variable geschrieben.

Aber meine Faulheit hat nach ner besseren Lösung gesucht, das das Automatisch geht!


----------



## PN/DP (6 August 2010)

*BaseScreenName*

In *HmiRuntime.BaseScreenName* steht automatisch der *Name* des aktuell angezeigten Bildes drin.

Zitat aus der WinCCflex VBS-Referenz


> *BaseScreenName*
> 
> *Beschreibung*
> Liest den Namen des aktuellen Grundbildes oder löst über das Setzen eines neuen Bildnamens einen Grundbildwechsel aus.
> ...



Anwendungsbeispiel von mir: ein Klick auf den Meldeindikator wechselt zum Meldebild oder wieder zurück

```
[COLOR="Green"]' Sub Zeige_Meldungsbild()
' Bild "006_Meldungen" aktivieren bzw. Bild zurück
'
' Dieses Script wird an den Meldeindikator an das Ereignis "Klicken" projektiert
' (weil AktiviereBild da nicht zugewiesen werden kann).[/COLOR]

[COLOR="blue"]If[/COLOR] [COLOR="DimGray"]HmiRuntime.BaseScreenName[/COLOR] <> [COLOR="darkred"]"006_Meldungen"[/COLOR] [COLOR="blue"]Then[/COLOR]
  [COLOR="darkred"]ActivateScreen "006_Meldungen"[/COLOR], 0
[COLOR="blue"]Else[/COLOR]
  [COLOR="darkred"]ActivatePreviousScreen[/COLOR]
[COLOR="Blue"]End If[/COLOR]
```

Gruß
Harald


----------

