Datumswert in Listbox sortiert eintragen [gelöst]

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

DaWolf
*
Beiträge: 18
Registriert: Mi, 01.04.2009 17:03
Wohnort: Deggendorf / Bayern

Datumswert in Listbox sortiert eintragen [gelöst]

Beitrag von DaWolf »

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
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
Stephan
********
Beiträge: 12368
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: Datumswert in Listbox sortiert eintragen

Beitrag von Stephan »

Hat da jemand eine Idee?
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.

Oder was übersehe ich?


Gruß
Stephan
DaWolf
*
Beiträge: 18
Registriert: Mi, 01.04.2009 17:03
Wohnort: Deggendorf / Bayern

Re: Datumswert in Listbox sortiert eintragen

Beitrag von DaWolf »

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
Win XP Prof. SP 3 / OpenOffice 3.1.0 OOO310m11 (Build:9399) mit Sun Report Builder 1.1.0 / Firefox 3.0.10
Stephan
********
Beiträge: 12368
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: Datumswert in Listbox sortiert eintragen

Beitrag von Stephan »

Der Nutzer wählt dann das nächste Datum aus, trägt eine Uhrzeit ein und übergibt das ganze an die Listbox.
und dafür mußt Du ja bereits Code verwenden, der sollte Dir also bereits vorliegen,
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
Geht das überhaupt? Wenn ja, wie?
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.


Gruß
Stephan
Antworten