![]() |
Combobox in eine Ini einlesen
Sers Delphi-Programmierer,
Nämlich hab ich eine Combobox , wenn ich in der Combobox ein Eintrag auswähle soll der Eintrag in der Ini eingetragen werden.
Code:
bisher hab ich den Code stehen, was müsste ich daran ändern?
if Components[i] is TCombobox then
ini.WriteString('Jahr',(Components[i] as TCombobox).name,((Components[i] as TCombobox).text)); Vielen dank im voraus :thumb: mfg kumar89 |
Re: Combobox in eine Ini einlesen
Ich würde nicht den Text sondern den Inhalt des ausgewählten Eintrags in die Ini schreiben
Delphi-Quellcode:
name := (Components[i] as TCombobox).name;
value := (Components[i] as TCombobox).Items[ (Components[i] as TCombobox).itemIndex]; |
Re: Combobox in eine Ini einlesen
Hallo,
aha, wo steht denn dieser Code ??? Was funktioniert nicht ? Warum diese ganzen TypeCasts ? Wenn schon, dann nur einmal wieder in eine lokale Variable (ComboBoxX). Benutze mal eine lokale Variable zum Auslesen des aktuellen Eintrages.
Delphi-Quellcode:
ItemIndex kann auch -1 sein, dann gibt's bei meinem Code eine Exeption,
var
sSelCBItem: String; begin sSelCBItem:= ComboBox1.Items[ComboBox1.ItemIndex]; Ini.WriteString ... sSelCBItem also vorher prüfen ... Heiko |
Re: Combobox in eine Ini einlesen
Liste der Anhänge anzeigen (Anzahl: 1)
es geht soweit ichs mir vorgestellt hab, blos das 2 zeilen erscheinen die nicht erwünscht sind, ich versteh auch net wieso, warum die 2 zeilen in die ini gespeichert werden.
Mein Quellcode:
Code:
Weiß jemand einen Rat?
if Components[i] is TCombobox then
ini.WriteString('Summen'+(Jahr.Text)+(Monat.Text),(Components[i] as TCombobox).name,((Components[i] as TCombobox).text)); Siehe Anhang mfg Kumar89 |
Re: Combobox in eine Ini einlesen
Und welche Zeilen sind das? Wie sieht Deine Schleife aus? Wir können ja nicht hellsehen.
|
Re: Combobox in eine Ini einlesen
Die Zeilen Jahr und Monat müssten raus mit dem Zahlen in der Ini.
Schleife:
Delphi-Quellcode:
Danke
For i := 0 to ComponentCount - 1 do
begin if (TEdit(Components[i]).Name = 'prodLK') or (TEdit(Components[i]).Name = 'unprodLK') or (TEdit(Components[i]).Name = 'GehaltServ') or (TEdit(Components[i]).Name = 'PersonalNK') or (TEdit(Components[i]).Name = 'Berufsbekl') or (TEdit(Components[i]).Name = 'KostenServ') or (TEdit(Components[i]).Name = 'AnschKostFremd') then ini.WriteString('Daten'+(Jahr.text),(Components[i] as TEdit).name,(Components[i] as TEdit).text) else if Components[i] is TCombobox then ini.WriteString('Summen'+(Jahr.Text)+(Monat.Text),(Components[i] as TCombobox).name,((Components[i] as TCombobox).text)); end; |
Re: Combobox in eine Ini einlesen
Hast Du die Ini mal zwischendurch gelöscht? Vielleicht stammen die Zeilen noch von vorherigen Versuchen.
|
Re: Combobox in eine Ini einlesen
hab mal die ganze Ini gelöscht, aber wird auch immer wieder angezeigt.
|
Re: Combobox in eine Ini einlesen
Ich würde den Namen vorher in eine loakle Variable übernehmen.
Name := TEdit(Components[i]).Name;
Delphi-Quellcode:
if (name = 'prodLK') or (name = ...
|
Re: Combobox in eine Ini einlesen
Welche Comboboxen hast Du denn auf dem Formular? Übrigens finde ich es etwas befremdlich, dass Du das Components-Array durchläufst und die Edits dann doch wieder nach ihren Namen ausfilterst. Übrigens prüfst Du in dem Fall noch nicht einmal, ob es auch Edits sind.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:46 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz