Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Objekte und eigenschaften verwalten? (https://www.delphipraxis.net/76421-objekte-und-eigenschaften-verwalten.html)

moelski 4. Sep 2006 11:37


Objekte und eigenschaften verwalten?
 
Moin !

Tja, unsere Anwendung hat mal einfach angefangen und nun wirds langsam immer komplexer. Ein Grund, einige starre Strukturen aufzubrechen und Klassen / Objekte einzufügen. Das ist auch schon zu grossen Teilen passiert und funktioniert.
Allerdings können wir im Moment dennoch nur ein Objekt bearbeiten. Um das mal mit Worten auszukleiden ...
Unsere Anwendung zeichnet von seriellen Geräten die Daten auf und erstellt daraus (Lade-) Kurven. Daneben kann man diese Daten natürlich in eine Datei schreiben und auch wieder laden. Im Moment geht aber nur entweder eine Datei laden, oder ein Gerät aufzeichnen.
Was wir irgendwann mal erreichen wollen:
- mehrere Dateien öffnen und in einem Tree darstellen
- je nach selektierter Datei auf das entsprechende (Lader-) Objekt zugreifen und die Daten verarbeiten
- die Möglichkeit Dateien in den Tree zu laden und nebenbei eine Aufzeichnung laufen zu lassen

Das alles geht nur, wenn man halt für jeden Lader, jede Schnittstelle und jede Datei ein Objekt erzeugt. Diese Objekte haben natürlich jeweils unterschiedliche Eigenschaften.

Im Moment überlege ich nun wie man das verwalten kann.
Zunächst mal die Objekte ... Wie kriege ich es hin, dass ich immer wiess welche Objekte angelegt wurden? Dies wäre ja z.B. beim Beenden wichtig um alle Objekte auf free zu setzen. Aber auch währned das Prob rennt wäre diese Info ganz interessant.
Dann hat jedes Objekt noch die unterschiedlichsten Eigenschaften die im Moment über INI Dateien gehandhabt werden. Was wäre der sinnvollste Weg, damit ein User diese Eigenschaften möglichst einfach betrachten und auch bearbeiten kann? Wir haben von TMS die VCL Subscription. Dabei gibt es mehrere Parameter Komponenten. Könnte man damit eine Art Eigenschaftseditor wie z.B. der Objektinspektor der D-IDE bauen?

Greetz Dominik

oki 4. Sep 2006 11:50

Re: Objekte und eigenschaften verwalten?
 
Hi,

Zitat:

Im Moment überlege ich nun wie man das verwalten kann.
Zunächst mal die Objekte ... Wie kriege ich es hin, dass ich immer wiess welche Objekte angelegt wurden? Dies wäre ja z.B. beim Beenden wichtig um alle Objekte auf free zu setzen. Aber auch währned das Prob rennt wäre diese Info ganz interessant.
auf diesen Punkt möchte ich hier erst mal eingehen.
Grundsätzlich könnt ihr eure Objecte in einer Liste vom Typ TObjectList speichern. das hat den Vorteil, dass ne Menge algemeiner Listenkram bereits implementiert ist. gebt euren Objekten für die Übersichtlichkeit zusätzliche Member wie "Unsere Bezeichnung" und "Bemerkungen". das macht sich in einer Visualisierung immer gut.
Für die anzeige handhabe ich es immer so, dass ich Komponenten aussuche, die in Ihren Items die Eigenschaft Data besitzen. Dort kann man dann den Objectinstanz mit ablegen. Da die Objekte alle notwendigen Proceduren für Ihr Verhalten besitzen kann man z.B. aus einem Listeneintrag nach entsprechender selektion oder aufruf auf das Object aus Data zugreifen und die entsprechende Methode aufrufen.

Wenn hier was nicht ganz klar ist fragt, ich helf gern weiter.

Gruß oki

shmia 4. Sep 2006 15:11

Re: Objekte und eigenschaften verwalten?
 
Deine Anwendung scheint prädestiniert für eine MDI-Anwendung zu sein.
Die Child-Formulare dienen dabei als Container für
* die Daten
* den Dateinamen
* Anzahl der Datensätze
* Status (browsing oder receiving)
Natürlich hat jedes Child-Formular auf die Komponente für ser. Schnittstelle.
Man kann also auch zwei oder mehr ser. Schnittstellen gleichzeitig auslesen.

Du kannst dir meinen CSV-Editor ( http://www.delphipraxis.net/internal...ct.php?t=61227 ) als Vorlage für eine MDI-Anwendung anschauen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:50 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz