![]() |
Datenbank: Access • Zugriff über: ADO table/query
Problem bei Detail-Anzeige von Datensätzen
Moin.
Titel ist mir leider nix passenderes eingefallen. Ich habe folgendes Problem. Ich lasse mir eine Übersicht der Daten in einem DBGrid anzeigen. Per Doppelklick auf eine Zele öffnet sich ein neues Formular in dem die Details des Datensatzs bearbeitet werden können. Das klappt auch alles wunderbar. Nun zu meinem Problem. Ich möchte mehrere Dieser "Detail-Fenster" mit unterschiedlichen Datensatzen öffen können. Weil z.Z. öffnet er den aktuellen Datensatz. Wenn ich ein zweites Fenster öffne wird in dem ersten der gleiche Datensatz angezeigt (was ja auch logisch ist). Wie kann ich das am geschicktesten machen. (evtl. die Daten in den Detailsfenstern per query mit datensatznummer auswählen ?) Gruß tr909 |
Re: Problem bei Detail-Anzeige von Datensätzen
Eigentlich ganz einfach. Deklariere eine Liste, das die geöffneten Detailfenster aufnimmt. Beim Zerstören des Formulars gibtst Du die geöffneten Detailfenster wieder frei:
Delphi-Quellcode:
Du kannst noch einbauen, das beim Minimieren des Hauptfensters auch die Detailfenster minimiert werden etc.
Type
TMyForm = Class (TForm) ... Private fDetails : TObjectList; ... End; Procedure TMyForm.FormCreate (Sender : TObject); Begin ... fDetails := TObjectList.Create; End; Procedure TMyForm.FormDestroy (Sender : TObject); Begin fDetails.Free; End; Procedure TMyForm.DBGridDblClick (Sender : TObject); Var f : TMyDetailWindow; Begin f := TMyDetailWindow.Create (Nil); fDetails.Add (f); f.Show; End; |
Re: Problem bei Detail-Anzeige von Datensätzen
Guten Morgen.
Ich denke, dass Problem ist nicht die Verwaltung der Detailfenster, sondern das allen Detailfenstern gemeinsame DataSet. Jedes Detailfenster sollte sich tatsächlich seine Daten per lokaler Query besorgen. Dazu muss nur der PK übergeben werden. Nach Änderungen sollte allerdings eine Rückmeldung an die MainForm mit der Listenansicht erfolgen, damit dort das DataSet refreshed werden kann und keine veralteten Inhalte mehr anzeigt. Grüße vom marabu |
Re: Problem bei Detail-Anzeige von Datensätzen
Moin marabu!
Ach so. Davon bin ich ausgegangen, ehrlich gesagt (im FormCreate des Detailfensters) |
Re: Problem bei Detail-Anzeige von Datensätzen
Danke für die schnelle Hilfe. Funktioniert bis jetzt sehr gut;)
Werde noch noch die Sache mit der ObjectList umsetzen und den rest vom code anpassen (müssen ;( ). Gruß tr909 |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:42 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