ScreenHandling
Aus Sceneo Wiki
Screen Handling
Ein Screen Ojekt repräsentiert ein Fenster in dem GUI-Elemente angeordnet werden können. Die NewScreen-Methode des ICentralServer-Interfaces erzeugt einen Screen aus einer Screen-Beschreibungsdatei - einem sogenannten Screenfile. Im dieser Datei ist definiert welche Elemente angezeigt werden und mit welchen Parametern diese erzeugt werden. In Beispiel 1 wird die Datei "test-screen.xml" geladen und mit dem Namen "test_screen_name" versehen (In diesem Namen sind keine "-" erlaubt!). Die Show-Funktion zeigt den Screen schließlich an. Der letzte Parameter muss in jedem Fall "true" sein, da es sich bei allen Screens die in einem PlugIn geöffnet werden um Popups handelt auch wenn sie Vollbild-Größe haben
Delphi Beispiel 1
var screen : IScreen;
screen := Core.Screens.NewScreen('test_screen_name', 'test-screen', true);
screen.Show;
Wird der Screen nicht mehr verwendet kann er mit
screen.Close;
geschlossen werden.
Es empfiehlt sich die Variable anschließend nil zu setzen. Ansonsten kann nicht erkannt werden ob das Objekt noch aktiv/vorhanden ist.
screen := nil;
Um die Elemente in einem Screen zu befüllen, oder deren Attribute zu ändern gibt es für jeden Elementtyp eine entsprechende Property. Um zum Beispiel eine Referenz auf ein Label mit Namen "lblTitle" zu bekommen kann folgender Code verwendet werden:
var labelTitle : IScreenLabel; labelTitle := screen.Menu['lblTitle];
Leider kann nicht ermittelt werden ob es im Screen tatsächlich ein Label mit der Bezeichnung gibt. Es wird in jedem Fall ein gültiger Zeiger zurück geliefert. Notfalls auf ein Dummy-Objekt. Im Normalfall ist es also nicht weiter schlimm mit dem Objekt weiter zu arbeiten wenn es eigentlich nicht vorhanden ist. In bestimmten Fällen kann es aber zu Problemen kommen.
