German combobox in den Globels editieren

Bobbes

Active Member
Licensed User
Longtime User
Hallo Leute,

ich bins mal wieder und habe folgende Frage:

Ich versuche gerade eine combobox zu kreieren die nach dem beenden des Programms in der combobox bleibt.

Gruß Bernd
 

specci48

Well-Known Member
Licensed User
Longtime User
Hallo Bernd,

etwas krumm gestellte Frage, oder? :sign0013:
Ich versuche mich mal an einer Interpretation.
*laut denk* Du hast eine Combobox, die erst im Programmablauf z.B. durch Benutzereingaben gefüllt wird. Nun möchtest Du, dass beim nächsten Programmstart die beim letzten mal aufgenommenen Einträge gleich in der Combobox wieder verfügbar sind. *leise denk*

Ist es das, was Du willst?


Gruß
specci48
 

Bobbes

Active Member
Licensed User
Longtime User
:signOops:
Hatte ich wieder mal ne Kartoffel in Hals (oder in der Tastatur). Du hast recht ich drücke mich manchmal kompliziert aus.

Aber Dank deiner laut gedachten Gedanken hast Du recht. Ich meine es so wie Du gedacht hast.

MfG
Bobbes
 

specci48

Well-Known Member
Licensed User
Longtime User
Hi,

nachdem Dein Wunsch nun geklärt ist gehen wir mal an die Lösung. :)
Hier gibt es prinzipiell zwei Möglichkeiten: Entweder Du kopierst die Einträge beim Programmende in eine (unsichtbare) Zwischentabelle und speicherst diese dann mit SaveCSV, oder Du schreibst die Inhalte mit FilePut nacheinander direkt in eine Datei.
Beim Programmstart prüfst Du dann jeweils mit FileExist, ob eine Datei mit gespeicherten Daten vorhanden ist. Falls nicht, dann präsentiert Du eine leere Combobox. Ansonsten erfolgt ein Einlesen der Daten mit LoadCSV oder FileRead inkl. Bestückung der Combobox.

Ich persönlich nehme für meine (Konfigurations-)Daten gerne die Tabellenlösung. Man könnte z.B. je Combobox eine eigene Spalte vorsehen und zusätzlich in die Reihe 0 jeweils die Anzahl von Einträgen ablegen. Darüber hinaus lassen sich aber auch andere Daten bequem in den Tabellenzellen ablegen. Mann muss nur darauf achten, immer auf die korrekte Zelle zuzugreifen.


Gruß
specci48
 

Bobbes

Active Member
Licensed User
Longtime User
hi Specci48,

das war eine sehr gute Idee, die auch sehr gut funktioniert. Leider bekomme ich nur das Speichern in eine Data.txt hin.

Sub txtEingabeMonteur_KeyPress (key)
anzahl=0
If key = Chr(13) Then
combobox3.Insert(anzahl,txtEingabeMonteur.Text)
FileOpen (c1, "data.txt", cRandom)
FilePut (c1,0,true,txtEingabeMonteur.Text)
FileClose (c1)
txtEingabeMonteur.Text = ""
txtEingabeMonteur.Visible = false
End If
End Sub

Das Laden der Data.txt in die Combobox1 klappt irgendwie nicht.

mfg Bobbes
 

specci48

Well-Known Member
Licensed User
Longtime User
Hallo Bobbes,

anbei mal wieder ein kleines Beispielprogramm, da muss ich nicht soviel reden... ;)
Programm starten, in die Textbox einige Eingaben tätigen und jeweils mit "Add" der Combobox hinzufügen. Beim Aufklappen der Combobx werden die hinzugefügten Einträge sichtbar. Mit "Quit" wird in zwei Dateien der Comboboxinhalt gespeichert. Einmal als Tabelle und einmal als sequentielle Datei.

Dann das Programm beenden und neu starten. Durch Klick auf "LoadCsv" oder "LoadSeq" wird die jeweilige Datei (Table.txt oder Seq.txt) geladen bzw. die Combobox aus dieser Datei gefüllt.


Gruß
specci48
 

Attachments

  • SaveableCombobox.sbp
    1.9 KB · Views: 289

Bobbes

Active Member
Licensed User
Longtime User
Hallo speccie48,
vielen Dank, wie gesagt das mit dem speichern das hat geklappt.
Aber ich krieg das mit den Verknüpfungen und den Kommas in den Klammern hin. Das Programm wird aber immer mehr mein Freund.

Nochmal vielen vielen Dank und ach ja ich wünsche Dir und dem Rest des Forums frohe Weihnachten.

Bobbes
 
Top