🙏 Helfen Sie jetzt mit, unser LibreOffice Forum zu erhalten! 🙏
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱
🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀
>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗
[erledigt]Frage zum Listener
[erledigt]Frage zum Listener
Liebe Fachleute,
in dem beiliegendem Calc Dokument möchte ich das Folgende erreichen:
In dem Listenfeld im Formular wird ein Produkt ausgewählt. Für jedes dieser Produkte wird es ein Sheet geben, auf dem ein Diagramm zum Zwecke der Sichtbarmachung der Auswertung dargestellt wird. Nach Auswahl des Produktes im Listenfeld soll auf eben dieses Sheet gewechselt werden. Im Original sind diese Sheets schon funktionsfähig vorhanden.
Die Frage ist, welchen Listener muss ich wie im Basic Code verwenden. Bis dato habe ich es mit XEventListener und XItemListListener ohne Erfolg versucht. Keiner der beiden kann von mir an das Listenfeld registriert werden, sprich nach Auswahl eines Items im Listenfeld erfolgt keine Reaktion. Was mache ich falsch?
Ach ja: Ich möchte das nicht mit Buttons lösen, weil die Auswahlliste eventuell noch bei Bedarf erweitert werden wird. Diese Erweiterung lässt sich so mwie es jetzt ist einfach durch Hinzufügen eines Produktes in die Tabelle properties erreichen.
Und ich finde die Optik der Buttons nicht so schön.
Kann mir bitte jemand einen Tipp zur Lösungsfindung geben?
PS.: Ich habe vergessen zu erwähnen: UBUNTU 16.04 mit Libreoffice 4.4.7.2
Danke
Gerd
in dem beiliegendem Calc Dokument möchte ich das Folgende erreichen:
In dem Listenfeld im Formular wird ein Produkt ausgewählt. Für jedes dieser Produkte wird es ein Sheet geben, auf dem ein Diagramm zum Zwecke der Sichtbarmachung der Auswertung dargestellt wird. Nach Auswahl des Produktes im Listenfeld soll auf eben dieses Sheet gewechselt werden. Im Original sind diese Sheets schon funktionsfähig vorhanden.
Die Frage ist, welchen Listener muss ich wie im Basic Code verwenden. Bis dato habe ich es mit XEventListener und XItemListListener ohne Erfolg versucht. Keiner der beiden kann von mir an das Listenfeld registriert werden, sprich nach Auswahl eines Items im Listenfeld erfolgt keine Reaktion. Was mache ich falsch?
Ach ja: Ich möchte das nicht mit Buttons lösen, weil die Auswahlliste eventuell noch bei Bedarf erweitert werden wird. Diese Erweiterung lässt sich so mwie es jetzt ist einfach durch Hinzufügen eines Produktes in die Tabelle properties erreichen.
Und ich finde die Optik der Buttons nicht so schön.
Kann mir bitte jemand einen Tipp zur Lösungsfindung geben?
PS.: Ich habe vergessen zu erwähnen: UBUNTU 16.04 mit Libreoffice 4.4.7.2
Danke
Gerd
- Dateianhänge
-
- form_test.ods
- (9.69 KiB) 220-mal heruntergeladen
Zuletzt geändert von geschu am Do 10. Nov 2016, 14:13, insgesamt 1-mal geändert.
--
Gerd
Gerd
Re: Frage zum Listener
Hallo Gerd,
-> Extras
-> Anpassen
--> Ereignisse
----> z.B. bei Dokument öffnen UND bei Dokument geschlossen den jeweiligen Listner auswählen.
Ich kann nämlich an dieser genannten Stelle keinen Eintrag in deiner Beispieldatei finden.
Aber wieso denn einen Listner?
Mein Vorschlag wäre, schau doch erstmal bei Dannenhöfer rein: 4.3.9 Welches sind die Besonderheiten von Listboxen?
Damit kannst Du das Listenfeld (Listbox) befüllen, einen Eintrag auswählen und nach der Auswahl schreibst Du noch ne kleine Routine die die Auswahl auswertet um damit dann zum ausgewählten Tabellenblatt zu springen. Nur mal so als grobe vorgehensweise.
Gruß
balu
Ist das nicht der falsche Ort?Keiner der beiden kann von mir an das Listenfeld registriert werden, sprich nach Auswahl eines Items im Listenfeld erfolgt keine Reaktion.
Werden Listner normalerweise nicht z.B. beim Datei öffnen regestriert? Sprich:Was mache ich falsch?
-> Extras
-> Anpassen
--> Ereignisse
----> z.B. bei Dokument öffnen UND bei Dokument geschlossen den jeweiligen Listner auswählen.
Ich kann nämlich an dieser genannten Stelle keinen Eintrag in deiner Beispieldatei finden.
Aber wieso denn einen Listner?
Mein Vorschlag wäre, schau doch erstmal bei Dannenhöfer rein: 4.3.9 Welches sind die Besonderheiten von Listboxen?
Damit kannst Du das Listenfeld (Listbox) befüllen, einen Eintrag auswählen und nach der Auswahl schreibst Du noch ne kleine Routine die die Auswahl auswertet um damit dann zum ausgewählten Tabellenblatt zu springen. Nur mal so als grobe vorgehensweise.
Gruß
balu
Re: Frage zum Listener
Hallo Balu,
danke das Du dich meiner angenommen hast.
Mit liebem Gruß
Gerd
danke das Du dich meiner angenommen hast.
Da hast Du wohl recht. Soweit bin ich aber noch nicht. Bislang führe ich das Makro "startListener" manuell mit F5 in der IDE aus.balu hat geschrieben:
Werden Listner normalerweise nicht z.B. beim Datei öffnen regestriert? Sprich:
-> Extras
-> Anpassen
--> Ereignisse
----> z.B. bei Dokument öffnen UND bei Dokument geschlossen den jeweiligen Listner auswählen.
Ich kann nämlich an dieser genannten Stelle keinen Eintrag in deiner Beispieldatei finden.
Den Artikel kenne ich. ich möchte gerne, das Direkt nach Anklicken eines Produktes reagiert wird. So wie es jetzt ist, so wie du es beschreibst, schreibe ich eine Routine zur Auswahl. Okay, aber die muss ich anstossen, mittels eines Buttons. Das soll aber der Listener übernehmen.Aber wieso denn einen Listner?
Mein Vorschlag wäre, schau doch erstmal bei Dannenhöfer rein: 4.3.9 Welches sind die Besonderheiten von Listboxen?
Damit kannst Du das Listenfeld (Listbox) befüllen, einen Eintrag auswählen und nach der Auswahl schreibst Du noch ne kleine Routine die die Auswahl auswertet um damit dann zum ausgewählten Tabellenblatt zu springen. Nur mal so als grobe vorgehensweise.
Mit liebem Gruß
Gerd
--
Gerd
Gerd
Re: Frage zum Listener
Hallo Gerd,
Du hast dem Listenfeld dem Namen "lstProdukte" gegeben, also kennst Du den Weg dorthin.
Da wo Du den Namen vergeben hast, steht weiter oben der Registername *Allgemeim*. Dann kommt noch das Register *Daten* und zu guter letzt kommt *Ereignisse*. Und bei *Ereignisse* kannst Du Makros aktivieren.
Schreibst Du jetzt ein Makro das die Auswahl des Listenfeld auswerten soll, hängst Du das dort bei dem Eintrag: Status geändert an. Und schon wird das Makro ausgeführt, wenn Du einen Eintrag im Listenfeld ausgewählt hast. Mehr brauchts nicht, also nix mit Listner. Versuchs einfach mal Schritt-für-Schritt, kann ja nix Kaputt gehen.
Gruß
balu
Blödsinn!Okay, aber die muss ich anstossen, mittels eines Buttons. Das soll aber der Listener übernehmen.
Du hast dem Listenfeld dem Namen "lstProdukte" gegeben, also kennst Du den Weg dorthin.
Da wo Du den Namen vergeben hast, steht weiter oben der Registername *Allgemeim*. Dann kommt noch das Register *Daten* und zu guter letzt kommt *Ereignisse*. Und bei *Ereignisse* kannst Du Makros aktivieren.
Schreibst Du jetzt ein Makro das die Auswahl des Listenfeld auswerten soll, hängst Du das dort bei dem Eintrag: Status geändert an. Und schon wird das Makro ausgeführt, wenn Du einen Eintrag im Listenfeld ausgewählt hast. Mehr brauchts nicht, also nix mit Listner. Versuchs einfach mal Schritt-für-Schritt, kann ja nix Kaputt gehen.

Gruß
balu
Re: Frage zum Listener
Hallo Balu,
ich melde mich ...
Mit liebem Gruß
Anscheinend hast Du recht, grinsbalu hat geschrieben: Blödsinn!
Ah ja ..Du hast dem Listenfeld dem Namen "lstProdukte" gegeben, also kennst Du den Weg dorthin.
Da wo Du den Namen vergeben hast, steht weiter oben der Registername *Allgemeim*. Dann kommt noch das Register *Daten* und zu guter letzt kommt *Ereignisse*. Und bei *Ereignisse* kannst Du Makros aktivieren.
Wieder was gelernt. geht gleich los ...........Schreibst Du jetzt ein Makro das die Auswahl des Listenfeld auswerten soll, hängst Du das dort bei dem Eintrag: Status geändert an. Und schon wird das Makro ausgeführt, wenn Du einen Eintrag im Listenfeld ausgewählt hast. Mehr brauchts nicht, also nix mit Listner. Versuchs einfach mal Schritt-für-Schritt, kann ja nix Kaputt gehen.
ich melde mich ...
Mit liebem Gruß
--
Gerd
Gerd
Re: Frage zum Listener
Hallo Balu,
vielen Dank für den Hinweis. Es funktioniert perfekt. Hab wieder was gelernt.
Mit liebem Gruß
Gerd
vielen Dank für den Hinweis. Es funktioniert perfekt. Hab wieder was gelernt.
Mit liebem Gruß
Gerd
--
Gerd
Gerd
Re: [erledigt]Frage zum Listener
Hallo Gerd,
schön wenn es funktioniert
.
Selber was dazu lernen ist ganz gut und schön, aber noch den ein oder anderen wertvollen Tipp dazu zu bekommen ist Goldwert.
Und deshalb habe ich mal meine Grabbelkischte durchstöbert und etwas gefunden was dir sehr nützlich sein wird. Habe es eben nur noch ein wenig von Ballast befreit.
Thema: Listbox in einem Dialog.
Ist wohl nicht genau das gleiche was Du machen willst, aber das spielt keine Rolle da in dem Makro in der angehängten Datei eine Sub drin ist die auch bei dir funktionieren wird. Und diese Sub lautet:
Sub befuellen
Ist nicht von mir, aber sie befüllt sehr schnell eine Listbox/Listenfeld mit Daten aus einem Tabellenblatt. Bei nur 10 oder 20 Zellen ist das wohl nicht so schlimm, aber wenn es um mehrere Hundert geht, dann merkt man wie Sinnvoll diese Sub ist. Probiers aus, und bei Fragen meld dich einfach.
Viel Spaß beim Studieren.
Gruß
balu
schön wenn es funktioniert

Selber was dazu lernen ist ganz gut und schön, aber noch den ein oder anderen wertvollen Tipp dazu zu bekommen ist Goldwert.
Und deshalb habe ich mal meine Grabbelkischte durchstöbert und etwas gefunden was dir sehr nützlich sein wird. Habe es eben nur noch ein wenig von Ballast befreit.
Thema: Listbox in einem Dialog.
Ist wohl nicht genau das gleiche was Du machen willst, aber das spielt keine Rolle da in dem Makro in der angehängten Datei eine Sub drin ist die auch bei dir funktionieren wird. Und diese Sub lautet:
Sub befuellen
Ist nicht von mir, aber sie befüllt sehr schnell eine Listbox/Listenfeld mit Daten aus einem Tabellenblatt. Bei nur 10 oder 20 Zellen ist das wohl nicht so schlimm, aber wenn es um mehrere Hundert geht, dann merkt man wie Sinnvoll diese Sub ist. Probiers aus, und bei Fragen meld dich einfach.
Viel Spaß beim Studieren.
Gruß
balu
- Dateianhänge
-
- simpel-Listbox-test-05-1116.ods
- (24.17 KiB) 289-mal heruntergeladen
An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:
Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.