Hallo zusammen,
ich habe eine Listbox in die Datumswerte in beliebiger Reihenfolge eingetragen werden können.
Neue Einträge sollen sich aufsteigend einsortieren.
Hat da jemand eine Idee?
Wolfgang
Datumswert in Listbox sortiert eintragen [gelöst]
Moderator: Moderatoren
Datumswert in Listbox sortiert eintragen [gelöst]
Zuletzt geändert von DaWolf am Do, 10.12.2009 16:07, insgesamt 1-mal geändert.
Win XP Prof. SP 3 / OpenOffice 3.1.0 OOO310m11 (Build:9399) mit Sun Report Builder 1.1.0 / Firefox 3.0.10
Re: Datumswert in Listbox sortiert eintragen
Und wozu? In Listenfeldern kann der Nutzer ohnehin nicht direkt über die GUI was reinschreiben, Du mußt also Änderungen per Code eintragen, bei der Gelegenheit sortiere die Werte einfach bevor Du sie einträgst.Hat da jemand eine Idee?
Oder was übersehe ich?
Gruß
Stephan
Re: Datumswert in Listbox sortiert eintragen
Hallo Stephan,
da hast Du recht. Der Nutzer hat einen Kalender, wählt ein Datum aus. Dann hat er noch ein Uhrzeitfeld in dem er eine Uhrzeit einträgt.
Anschließend werden die beiden Werte zusammen als String in die Listbox eingetragen.
Der Nutzer wählt dann das nächste Datum aus, trägt eine Uhrzeit ein und übergibt das ganze an die Listbox.
Wenn er dann fertig ist werden alle Einträge der Listbox zusammen an eine Textmarke in Write übertragen.
Das Problem: die Einträge der Listbox können - was das Datum betrifft - daher kreuz und quer sein.
Hast du dafür einen Lösungsansatz?
Vielleicht kann man das auch anders lösen: Dem Kalender kann man doch ein Startdatum vorgeben! Dann müsste man sich nur das zuletzt gewählte Datum merken und dieses dem Kalender als Startdatum + 1 Tag mitgeben. Geht das überhaupt? Wenn ja, wie?
Gruß
Wolfgang
da hast Du recht. Der Nutzer hat einen Kalender, wählt ein Datum aus. Dann hat er noch ein Uhrzeitfeld in dem er eine Uhrzeit einträgt.
Anschließend werden die beiden Werte zusammen als String in die Listbox eingetragen.
Der Nutzer wählt dann das nächste Datum aus, trägt eine Uhrzeit ein und übergibt das ganze an die Listbox.
Wenn er dann fertig ist werden alle Einträge der Listbox zusammen an eine Textmarke in Write übertragen.
Das Problem: die Einträge der Listbox können - was das Datum betrifft - daher kreuz und quer sein.
Hast du dafür einen Lösungsansatz?
Vielleicht kann man das auch anders lösen: Dem Kalender kann man doch ein Startdatum vorgeben! Dann müsste man sich nur das zuletzt gewählte Datum merken und dieses dem Kalender als Startdatum + 1 Tag mitgeben. Geht das überhaupt? Wenn ja, wie?
Gruß
Wolfgang
Win XP Prof. SP 3 / OpenOffice 3.1.0 OOO310m11 (Build:9399) mit Sun Report Builder 1.1.0 / Firefox 3.0.10
Re: Datumswert in Listbox sortiert eintragen
und dafür mußt Du ja bereits Code verwenden, der sollte Dir also bereits vorliegen,Der Nutzer wählt dann das nächste Datum aus, trägt eine Uhrzeit ein und übergibt das ganze an die Listbox.
?Das Problem: die Einträge der Listbox können - was das Datum betrifft - daher kreuz und quer sein.
Hast du dafür einen Lösungsansatz?
Du erweiterst obigen Code einfach um eine vorherige Sortierung und trägst er nach der Sortierung die Werte ein (das schrieb ich aber bereits). Oder wo treten im Konkreten Probleme auf? Meinethalben nimm einen einfachen Algorithmus wie Bubble-Sort ( http://de.wikipedia.org/wiki/Bubblesort ) da gibst auch schon fertigen Code im internationalen Forum: http://www.oooforum.org/forum/viewtopic ... ght=bubble
Es sollte reichen den Wert in einer global deklarierten Variable zu speichern. Falls Du nicht ausschliessen kannst das OOo zwischenzeitlich beendet wird und Du bei erneeutem Start immer noch den Datumsfolgewert brauchst schreibe ihn in eine einfache Textdatei und lies ihn beim Neustart aus dieser wieder ein.Geht das überhaupt? Wenn ja, wie?
Gruß
Stephan