Symbolleisten ausblenden und wieder einblenden
Verfasst: Fr, 29.06.2012 11:38
Hallo liebe Leute
Mit dem folgenden Codezeilen blende ich am Anfang meines "Programms XYZ" und beim Öffnen des Views die Symbolleisten aus
Dumm ist, wenn ich dann wieder in den Entwurfsmodus des Formulares gehe, um dort Änderungen durchzuführen, sind dort auch immer alle Symbolleisten weg. Also jedesmal nach einem Testlauf wieder über "Ansicht-Symbolleisten" jede benötige Symbolleiste wieder aktivieren. Das nervt...
Deshalbe würde ich gerne mit dem Funktionsaufruf Symbolleisten_setVisible(true) die Symbolleisten bei Beenden meines Formulars wieder aktivieren, damit sie eben im normalen Entwicklermodus auch wieder sichtbar sind. Ich habe dazu schon das Array "aListe()" public direkt ausserhalb des Sub deklariert und am Programmanfang einmal initial gefüllt. Aber ich weiss nicht, wie ich jetzt beim Schließen des Formulars im Anwendermodus (!) genau die vorher ausgeblendeten Symbolleisten wieder einblenden kann. Gibts da eine Benachrichtigung, an die ich einen Eventhandler binden kann, der dann aufgerufen wird, wenn rechts-oben das "Schließen-X" betätigt wird? Es funktioniert tadellos, wenn ich Symbolleisten_setVisible(true) und Symbolleisten_setVisible(false) im Wechsel und mit einigen sekunden Pause aufrufe... ein- und ausblenden klappt echt prima... nur brauch ichs eben nur jeweils einmal am Anfang dieses Formulars und einmal am Ende.
vg, Maddin
Moderation,4: verschoben in BASIC-Unterbereich, wo alle Makro-Fragen hin gehören
Mit dem folgenden Codezeilen blende ich am Anfang meines "Programms XYZ" und beim Öffnen des Views die Symbolleisten aus
Code: Alles auswählen
Sub xyz
mach_dieses_und_jenes()
tu_hier_von_auch_was()
arbeite = schoen + fleissig * sinnvoll
Symbolleisten_setVisible(false)
Und_jetzt_ist_fertig()
END SUB
'========================================
SUB Symbolleisten_setVisible(bShow)
DIM oLayout AS OBJECT
DIM i AS INTEGER
DIM s AS STRING
oLayout = StarDesktop.getCurrentFrame().oFrame.LayoutManager
oLayout.visible = true
aListe = layout.getElements()
FOR i = 0 to uBound(aListe)
s = aListe(i).ResourceUrl
if bShow = FALSE Then
oLayout.hideElement(s)
else
oLayout.showElement(s)
end if
NEXT
END SUB
'========================================
Deshalbe würde ich gerne mit dem Funktionsaufruf Symbolleisten_setVisible(true) die Symbolleisten bei Beenden meines Formulars wieder aktivieren, damit sie eben im normalen Entwicklermodus auch wieder sichtbar sind. Ich habe dazu schon das Array "aListe()" public direkt ausserhalb des Sub deklariert und am Programmanfang einmal initial gefüllt. Aber ich weiss nicht, wie ich jetzt beim Schließen des Formulars im Anwendermodus (!) genau die vorher ausgeblendeten Symbolleisten wieder einblenden kann. Gibts da eine Benachrichtigung, an die ich einen Eventhandler binden kann, der dann aufgerufen wird, wenn rechts-oben das "Schließen-X" betätigt wird? Es funktioniert tadellos, wenn ich Symbolleisten_setVisible(true) und Symbolleisten_setVisible(false) im Wechsel und mit einigen sekunden Pause aufrufe... ein- und ausblenden klappt echt prima... nur brauch ichs eben nur jeweils einmal am Anfang dieses Formulars und einmal am Ende.
vg, Maddin
Moderation,4: verschoben in BASIC-Unterbereich, wo alle Makro-Fragen hin gehören