Lade...
 

OpenWindow

OpenWindow

OpenWindow(windowID, n), OpenWindow(windowID)

Parameter:  Bezeichner eines Windows, Anzahl n (Default ist n = 0)

Stack
Stack Position Beschreibung
Stack(In) Top -
Stack(Out) Top

TRUE oder FALSE (1 oder 0)

199107
CX_WIDGET oder INVALID

Das identifizierte Window wird geöffnet, erscheint also auf dem Bildschirm. Mit Parameter n kann man die Zahl der gleichzeitig existenten Windows beschränken. Mit 0 wird keine Beschränkung gesetzt.

Das Resultat auf dem Stack zeigt an, ob ein Window eröffnet wurde, oder ob dies wegen Überschreitung des Limits n nicht der Fall war.
Bis DLL-Version 198981 wurde dies über TRUE/FALSE kommuniziert. Ab DLL-Version 199107 wird das Widget-Objekt des geöffneten Windows zurückgeliefert oder aber INVALID, falls OpenWindow nicht erfolgreich war.

Je nachdem, ob ein Control Window aktiv ist - siehe ControlWindow - wird das Window diesem als Childwindow zugeordnet oder nicht.

Über die von den Windowoberflächen (MS Windows, PM, OSF_Motif) eingeführten Parent/Child- und Owner-Beziehungen hinaus wird eine Beziehung zum Requestor etabliert. Es existieren je ein Pointer zum Requestor und dem Parent-Window des Requestors. Diese Beziehung ist nur dann bedeutungsvoll, wenn mehrere gleichartige Windows (mit gleicher stringID) existieren.

Die 2. bis n-te Instanz eines Windows werden mit 1 bis n+1 Sternchen ("*") im Titel gekennzeichnet. Wenn ein Window A ein Childobjekt besitzt, das mit einem Request ein weiteres Window B aktiviert (mit OpenWindow), und das Window B oder seine Childobjekte mit mindestens einem Request sich auf Window A beziehen, dann stellt die hier etablierte Beziehung sicher, dass ein von A' erzeugtes B' mit der stringID von A immer zuerst A' findet, während ein von A'' erzeugtes B sich automatisch auf A bezieht. D.h alle von den Childobjekten des Windows B ausgelösten Requests sehen nur A (solange dieses existiert).

Code-Beispiel:
OpenWindow(win1) -> window
"Dies befindet sich in einem neu geöffneten Fenster" window PutValue(STACK, subWidget)

InstantView