![]() |
Delphi Registry
Hallo alle zusammen!
Habe ein kleines Problem mit der Registry und das lautet wie folgt: Ich habe diese Prozedur und möchte sie mit in die Registry einbauen. Das heißt wenn ich auf checked clicke möchte ich das es beim neu starten des Programmes wieder gecheckt ist und das selbe mit der Suchfunktion und dem Label.
Delphi-Quellcode:
Ich habe es schon so probiert an die Registry abzuspeichern.
procedure TFmHaupt.WarengruppenSuchenExecute(Sender: TObject);
begin case TComponent(Sender).Tag of 3303: begin WaGrWGNr.Checked := true; WaGrBezeichnung.Checked := false; WarSU1.Text := ''; Label3.Caption := 'Warengruppen Nr.'; WarSU1.Visible := True; WarSU1.OnChange := WarSU1Change; end; 3304: begin WaGrWgNr.Checked := false; WaGrBezeichnung.Checked := true; WarSU1.Text := ''; Label3.Caption := 'Bezeichnung'; WarSU1.Visible := True; WarSU1.OnChange := WarSU2Change; end; end; end;
Delphi-Quellcode:
Ich habe es versucht über den TComponent(Sender) das funktioniert allesdiengs nicht! Kann mir jemand sagen ob ich überhaupt auf dem richtigen weg bin oder ob ich ganz falsch drann bin denn ich komme einfach nicht weiter!
// yy Registry auslesen
regist:=TRegistry.Create; regist.RootKey:=HKEY_CURRENT_USER; regist.OpenKey('Software\ZVVerwaltung\DialogPosition\FMHaupt', true); TComponent(Sender).Tag := regist.ReadInteger('Checked3016'); // yy Registry einlesen procedure TFmHaupt.FmClose(Sender: TObject; var Action: TCloseAction); var regist : TRegistry; begin regist:=TRegistry.Create; regist.RootKey:=HKEY_CURRENT_USER; regist.OpenKey('Software\ZVVerwaltung\DialogPosition\FMHaupt', true); regist.WriteInteger('checked3016', TComponent(Sender).Tag); Mfg und Danke im Vorraus Denise [EDIT=Luckie]Delphi-tags hinzugefügt. Beim nächsten Mal bitte selber machen. Danke.[/EDIT] |
Moin Denise,
erst einmal herzlich willkommen hier in der Delphi-PRAXiS. Wodurch wird denn WarengruppenSuchenExecute aufgerufen? |
Execute
Hallo, Danke für die herzliche Begrüßung!
Ich habe einen normalen button mit dem habe ich ein Popup menü verbunden und von dort aus wird dieses Suchen mit den einzelnen Untermenüs aufgerufen. Ich habe jedem einzelnen Untermenü einen ander Tag zu geordnet und mit diesem Tag steuere ich das jeweilige Suchen usw. an. Ich hoffe das hilft dir einiger maßen weiter. Mfg und Danke im Vorraus Denise |
Moin Denise,
wenn also jedem Menüpunkt WarengruppenSuchenExecute zugeordnet ist, und jeder Menüpunkt (bzw. die Action, sieht für mich zumindest nach Verwendung von TActionList aus) über sein eigenes Tag verfügt, sollte das gehen. Du kannst ja mal als erste Zeile in der Methode ein ShowMessage legen, dass Dir den Wert des jeweiligen Tags anzeigt, um zu sehen, dass das überhaupt funktioniert. BTW: Bei Deinen Registryfunktionen hast Du doch auch immer ein CloseKey? Ausserdem wäre ein try/finally Block nicht schlecht um die Ausführung von CloseKey sicherzustellen. [EDIT] Ist mir gerade aufgefallen :oops: Beim Schreiben in die Registry verwendest Du ja auch TComponent(Sender).Tag Der Wert dürfte allerdings immer 0 sein, ausser Du rufst fmClose mit geeigneten Parametern "manuell" auf [/EDIT] |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:21 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