![]() |
speichern von daten aus edits in abhängigkeit von einer cbox
also nochma,
mein prob is folgendes, ich hab ne combobox und ne menge edits, wenn ich in der box was auswähle zb 'a' dann kann ich was in die edits schreiben - soweit so gut - wenn ich aber nu was andres in der box auswähle sollen die edits wieder frei sein und zusätlich die vorher für 'a' eingegebenen daten nich verloren gehen, also so das ich beim wechsel zu a wieder die edits mit den vorher eeingetragenen zeug voll habe (hoffentlich war das verständlich) so das war das eine, dann gehts aber mitn speichern los, da soll es ja logischer weise auch klappen, also zb'a' auswählen und die daten zur verfügung haben. weil ich vorher nur mit pascal gearbeitet habe kam mir die idee ein 2dimensionales feld oda so zu erstellen, aber ich hab echt keine meter ahnung ob das alles so geht - kann mir bitte jmd helfen?? und auch so das man es versteht ^^also nich nur begriffe hinwerfen sondern evtl ein bissl mehr^^ schonma danke mfg Bx3 lasst euch mitn beantworten zeit, bin erst gegen 20:30 wieder da^^ |
Re: speichern von daten aus edits in abhängigkeit von einer
Zitat:
[edit] Hier mal die angesprochene Möglichkeit mittels TMemIniFile:
Delphi-Quellcode:
[/edit]
unit IniDemo;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, IniFiles; type TForm1 = class(TForm) cbbOption: TComboBox; edt1: TEdit; edt2: TEdit; edt3: TEdit; procedure FormCreate(Sender: TObject); procedure FormDestroy(Sender: TObject); procedure cbbOptionChange(Sender: TObject); procedure cbbOptionSelect(Sender: TObject); procedure edt1Change(Sender: TObject); private { Private-Deklarationen } TheIni: TMemIniFile; public { Public-Deklarationen } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); var i: Integer; begin //Ich bin gerade zu faul, daher ins Programmverzeichnis //(soll man aber eigentlich nicht tun) TheIni := TMemIniFile.Create(ChangeFileExt(ParamStr(0),'.ini')); for i := 0 to Pred(ComponentCount) do if Components[i] is TEdit then TEdit(Components[i]).Text := TheIni.ReadString(cbbOption.Items[cbbOption.ItemIndex], TEdit(Components[i]).Name, 'Noch nix drin'); end; procedure TForm1.FormDestroy(Sender: TObject); begin //Änderungen auf HD schreiben TheIni.UpdateFile; TheIni.Free; end; procedure TForm1.cbbOptionChange(Sender: TObject); begin //da nicht klar ist, welches Ereignis ausgelöst wird (vom Style der ComboBox //abhängig), einfach in beiden Ereignissen deklarieren cbbOptionSelect(Sender); end; procedure TForm1.cbbOptionSelect(Sender: TObject); var i: Integer; begin //Ini-Einträge zum gewählten Eintrag auslesen und anzeigen for i := 0 to Pred(ComponentCount) do if Components[i] is TEdit then TEdit(Components[i]).Text := TheIni.ReadString(cbbOption.Items[cbbOption.ItemIndex], TEdit(Components[i]).Name, 'Noch nix drin'); end; procedure TForm1.edt1Change(Sender: TObject); begin //Änderungen in der Ini festhalten TheIni.WriteString(cbbOption.Items[cbbOption.ItemIndex], TEdit(Sender).Name, TEdit(Sender).Text); end; end. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:55 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 by Thomas Breitkreuz