Lade...
 

AddPage

AddPage

AddPage(windowID, notebookID), AddPage(windowID), AddPage(, notebookID), AddPage

Parameter:  Bezeichner eines Windows und eines Notebooks

Die windowID bezieht sich auf das äußerste Fenster, in welchem sich das Notebook befindet, notebookID ist der Bezeichner des Notebooks, in welches die Seite eingefügt werden soll.

AddPage ohne notebookID bezieht sich immer auf das erste (und meist einzige)  Notebook im Window

Die einzufügende Notebook-Seite wird über den Namen angegeben und sollte ein in dem Modul existierendes Fenster benennen. Syntaktisch kann zwar per Widget ein CX_WIDGET-Objekt übergeben werden, jedoch wird das übergeben Widget nicht in das Notebook eingefügt, sondern ledlich dessen Name zur Suche des Fensters verwendet, welches dann eingefügt wird. AddPage fügt immer eine neue Seite hinzu, auch wenn das Notebook bereits eine Seite mit gleichem Namen enthält. In dem Fall können die einzelnen Seiten über das zurückgegebene Widget-Objekt voneinander unterschieden und einzeln angesteuert werden (SetPage, RemovePage).


Falls die einzufügende Seite (Fenster) als normales Fenster im dem Modul geöffnet ist, hat das keinen Einfluss auf AddPage. AddPage wird eine neue Instanz dieses Fensters in das Notebook einfügen und das geöffnete Fenster bleibt offen.

Als Fenstername kann hierbei nicht der Name einer bereits im Code definierten Notebook-Seite sein, da es ein Toplevel-Fenster sein muss. Dies solte in dem folgenden Beispiel nachvollziehbar sein.

Code-Beispiel:
Window(EditWin, 100, 200, 50, 10, "EditWin") { Notebook(notebook) { // v- "InitialPage" cannot be used for AddPage (not a toplevel window) Window(InitialPage, 0, 0, 0, 0, "Initial") {} } } // Only used as notebook page, so position and size can be ignored Window(OverviewPage, 0, 0, 0, 0, "Overview") { //... } Var(page) // Add window "OverviewPage" as new page into the notebook from EditWin "OverviewPage" AddPage(EditWin, notebook) -> page // Set the page as active page (if not already) GetPage(EditWin, notebook) page @ ifnot { page SetPage(EditWin, notebook) } // Remove the newly added page page RemovePage(EditWin, notebook) // The page is now marked as closed window page Call(IsOpen) // -> FALSE

 

Stack
Stack Position Typ Beschreibung
Stack(In) Top STRING Name der einzufügenden Seite
Stack(Out) Top CX_WIDGET Die eingefügte Notebook-Seite

 

Verwandte Themen