Tabelle in Dialogen?
Moderator: Moderatoren
Tabelle in Dialogen?
Hallo zusammen,
gibt es eine Möglichkeit eine mehrspaltige Listbox in einem Dialog zu erstellen? Oder gibt es ein anderes Dialog-Kontrollfeld, dass diese Funktionalität realisiert? Das Tabellengrid-Element aus den Formularen steht ja bei Dialogen nicht zur Verfügung.
Danke im Vorraus für Eure Tips,
Steffan.
gibt es eine Möglichkeit eine mehrspaltige Listbox in einem Dialog zu erstellen? Oder gibt es ein anderes Dialog-Kontrollfeld, dass diese Funktionalität realisiert? Das Tabellengrid-Element aus den Formularen steht ja bei Dialogen nicht zur Verfügung.
Danke im Vorraus für Eure Tips,
Steffan.
Hey Stefan,

Gruss
Thomas
Wozu? Du kannst die Inhalte doch vorher zusammenfügen (als String) und hast dann nur noch eine einspaltige Listbox (mehrspaltige gibt es nicht). Reine Programmiertechniggibt es eine Möglichkeit eine mehrspaltige Listbox in einem Dialog zu erstellen?

Gruss
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Hallo Thomas,
Steffan
Klar kann ich das. Allerdings habe ich dann aber das Problem, dass die spaltenweise Ausrichtung nicht mehr funktioniert, was ziemlich unschön ist. Ich habe versucht das Problem mit nebeneinanderliegenden einzelnen Listboxen ohne Rahmen zu lösen, die mittels Makro verknüpft wurden (Auswahländerung der einen Listbox in die andere übernehmen), allerdings habe ich dann Scrollbalken, die ich nicht ausschalten kann. Irgendwie auch ein unbefriedigendes Ergebnis.Wozu? Du kannst die Inhalte doch vorher zusammenfügen (als String) und hast dann nur noch eine einspaltige Listbox
Steffan
Hey Steffan,
So schwer ist das nicht, als erstes verwendest du eine nicht-proportionale Schrift im Dislogfeld (Listenfeld), also eine Schrift, die alle Buchstaben gleich lbreit darstellt.
Jetzt zählst du die Zeile aus (z.B. 60 Zeichen, wobei du nach je 20 Zeichen eine neue Spalte beginnst:
Dein Eintrag baust du jetzt wie folgt auf ("s" bezeichnet dabei eine Stringzeile):
Dadurch erhälst du eine wunderbar strukturierte Liste, Spaltengenau und unabhängig von der Länge der Texte. Funktioniert einandfrei. Brauchst du praktische Beispiele?
Gruss
Thomas
Doch. Das musst du nur programmierenAllerdings habe ich dann aber das Problem, dass die spaltenweise Ausrichtung nicht mehr funktioniert, was ziemlich unschön ist.

Jetzt zählst du die Zeile aus (z.B. 60 Zeichen, wobei du nach je 20 Zeichen eine neue Spalte beginnst:
Dein Eintrag baust du jetzt wie folgt auf ("s" bezeichnet dabei eine Stringzeile):
Code: Alles auswählen
...
s = space(60) 'deine Zeile hat jetzt 60 zeichen
REM erster Eintrag steht in s1, zuerst Längenprüfung
if len(s1)> 17 then s1 = left(s1, 17) & ".."
REM Eintrag setzen, ab Pos. 1
mid(s, 1, len(s1), s1)
REM zweiter Eintrag, in s2, gleiche Vorgehensweise:
if len(s2)> 17 then s2 = left(s2, 17) & ".."
mid(s, 20, len(s2), s2)
REM und so weiter
...
Gruss
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Hallo Thomas,
erst einmal vielen Dank für Deine Mühe.
So werde ich es wahrscheinlich machen. Auf die Idee mit nichtproportinaler Schrift war ich noch gar nicht gekommen!
Allerdings bleibt das Problem der Lesbarkeit überlanger Einträge. Meine Idee hierzu wäre die Verwendung eines Tolltips der die ganze Info enthält, allerdings habe ich die noch nicht dauerhaft mehrzeilig hingekriegt (s.a.: viewtopic.php?t=8977).
Steffan
erst einmal vielen Dank für Deine Mühe.
So werde ich es wahrscheinlich machen. Auf die Idee mit nichtproportinaler Schrift war ich noch gar nicht gekommen!
Allerdings bleibt das Problem der Lesbarkeit überlanger Einträge. Meine Idee hierzu wäre die Verwendung eines Tolltips der die ganze Info enthält, allerdings habe ich die noch nicht dauerhaft mehrzeilig hingekriegt (s.a.: viewtopic.php?t=8977).
Steffan
Hallo
Wenn natürlich die Auswahl direkt irgendwas auslösen soll geht das nicht, aber generell wäre das mein erster Gedanke. Dann kann es dir nämlich sogar egal sein ob das 30, 50, 100 oder 10.000 Zeichen sind
Grüße
Thomas
Ich kenne nun die spezielle Aufgabe nicht, aber wäre es nicht evtl möglich, einen langen Eintrag einfach zu kürzen, und bei Auswahl in anderen Feldern anzuzeigen?Steffan hat geschrieben:Allerdings bleibt das Problem der Lesbarkeit überlanger Einträge. Meine Idee hierzu wäre die Verwendung eines Tolltips der die ganze Info enthält, allerdings habe ich die noch nicht dauerhaft mehrzeilig hingekriegt
Wenn natürlich die Auswahl direkt irgendwas auslösen soll geht das nicht, aber generell wäre das mein erster Gedanke. Dann kann es dir nämlich sogar egal sein ob das 30, 50, 100 oder 10.000 Zeichen sind

Grüße
Thomas
Hallo,
Ich habe eine große Tabelle (Listbox) in der Infos zu Dokumenten angezeigt werden sollen (Datum, Empfänger, Projektbezug, Thema, Art), das ganze gekoppelt mit einer Suchfunktion.
Die Listbox ist nahezu bildschirmbreit und -hoch. Bei Doppelklick soll sich das jeweilige Dokument öffnen. Die Höhe möchte ich nicht einschränken, da möglichst viele Einträge angezeigt werden und man nicht ewig scrollen muss, um zum gewünschten zu kommen. Bei Deinem Vorschlag hätte ich im ungünstisten Fall die Variante, dass das Dokument oben in der Liste (also am oberen Bildschirmrand) steht, die ergänzende Info am unteren Bildschirmrand. Deshalb meine Idee
Steffan.
Das ganze ist für mich eher ein Problem der Übersichtlichkeit:Ich kenne nun die spezielle Aufgabe nicht, aber wäre es nicht evtl möglich, einen langen Eintrag einfach zu kürzen, und bei Auswahl in anderen Feldern anzuzeigen
Ich habe eine große Tabelle (Listbox) in der Infos zu Dokumenten angezeigt werden sollen (Datum, Empfänger, Projektbezug, Thema, Art), das ganze gekoppelt mit einer Suchfunktion.
Die Listbox ist nahezu bildschirmbreit und -hoch. Bei Doppelklick soll sich das jeweilige Dokument öffnen. Die Höhe möchte ich nicht einschränken, da möglichst viele Einträge angezeigt werden und man nicht ewig scrollen muss, um zum gewünschten zu kommen. Bei Deinem Vorschlag hätte ich im ungünstisten Fall die Variante, dass das Dokument oben in der Liste (also am oberen Bildschirmrand) steht, die ergänzende Info am unteren Bildschirmrand. Deshalb meine Idee
- die Infos (Spalten) möglichst vollzählig anzuzeigen und
- die ergänzende Info über den Tooltip (also nahe am gewählten Eintrag) zu realisieren
Steffan.
Morgen,

Aber was ich mir eben so spontan noch gedacht hätte: Du könntest für jedes Feld eine ComboBox anlegen, und mit ein wenig Arbeit ein entsprechendes Filter-Makro schreiben. Dann kann der Benutzer auswählen, wie er seine Infos halt hat... "Projekt war das und das... mal sehen... dann kommen die und die Empfänger in Frage... das war der..." und so.
Mit ein bissl Fleißarbeit beim Programmieren dürfte das schon recht übersichtlich bleiben - vorrausgesetzt die Benutzer wissen vorher wenigstens ungefähr wonach sie suchen.
Grüße
Thomas
Ja, dachte ich mir schon, dass es da Probleme gibt. Der Vorschlag war ja nun nicht sooo originell, als dass da außer mir keiner drauf kämeSteffan hat geschrieben:Das ganze ist für mich eher ein Problem der Übersichtlichkeit:
Ich habe eine große Tabelle (Listbox) in der Infos zu Dokumenten angezeigt werden sollen (Datum, Empfänger, Projektbezug, Thema, Art), das ganze gekoppelt mit einer Suchfunktion.

Aber was ich mir eben so spontan noch gedacht hätte: Du könntest für jedes Feld eine ComboBox anlegen, und mit ein wenig Arbeit ein entsprechendes Filter-Makro schreiben. Dann kann der Benutzer auswählen, wie er seine Infos halt hat... "Projekt war das und das... mal sehen... dann kommen die und die Empfänger in Frage... das war der..." und so.
Mit ein bissl Fleißarbeit beim Programmieren dürfte das schon recht übersichtlich bleiben - vorrausgesetzt die Benutzer wissen vorher wenigstens ungefähr wonach sie suchen.
Grüße
Thomas
Hallo,
Beste Grüße und nochmal vielen Dank für die Tips,
Steffan.
vielen Dank für die Anregung, aber ich habe über die Ergebnisse gern einen größeren Überblick. In Praxis funktioniert das als Kombination von Suchen und "Gucken". Also ich gebe die ersten 3 Buchstaben des Empfängers oder des Projektes ein und erhalten als Ergebnis eine überschaubare Liste aus der ich das zugehörige Dokument dann per Doppelklick auswähle und öffne. Das habe ich mittlerweile auch mit der selbstgebastelten, mehrzeiligen Listbox aus Thomas' Tip realisiert. Das läuft auch ganz gut, allerdings eben mit den oben erwähnten Einschränkungen in Darstellung und Handling der Listbox. Da es sich aber um Punkte handelt, die die Funktionalität nicht gravierend beeinträchtigen, verlasse ich diese Baustelle erst einmal.Mihilist hat geschrieben: Aber was ich mir eben so spontan noch gedacht hätte: Du könntest für jedes Feld eine ComboBox anlegen, und mit ein wenig Arbeit ein entsprechendes Filter-Makro schreiben. Dann kann der Benutzer auswählen, wie er seine Infos halt hat... "Projekt war das und das... mal sehen... dann kommen die und die Empfänger in Frage... das war der..." und so.
Beste Grüße und nochmal vielen Dank für die Tips,
Steffan.