![]() |
Memo mehrfach verwenden
Hi,
bin gerade dabei ein paar Einzelteile zusammenzubauen. Jetzt weiß ich nicht genau, wie ich folgendes am besten mache : Adressen braucht man wohl an allen Ecken und Kanten, an allen möglichen Programmteilen, auf Bildschirm, Drucker usw. Ich bräuchte hierzu am besten ein Memo oder von mir aus nur ein paar Labels. Nur wo lege ich die am besten zentral hin, damit ein Zugriff von sämtlichen Programmteilen her möglich ist :?: Soll ich dafür eine eigene Form machen oder was ? Verschiedene Berechnungen, die ich überall brauche habe ich in einer zentralen Unit zusammengefaßt, aber die liefern meist nur Zahlen zurück, die intern (so zu sagen : hinter den Kulissen) verwendet werden. Was mir da so vorschwebt, kommt mir für solch ein kleineres Problem viel zu kompliziert vor. Ich bräuchte irgendeine Prozedur, z.B.:
Code:
, wobei x,y oben links wäre.
procedure SchreibeAdresse (x,y : integer);
|
Hallo Hansa
wo soll die Funktion draufschreiben und woher nimmt sie die Addresse? |
Adresse kommt aus DB. Der Zugriff müßte mit in die Prozedur rein. Tja, und die soll möglichst überall hinschreiben.
|
Ich weiss nicht was es für ein Tool werden soll, aber wenn es recht komplex ist, würde ich dir zu reiner OOP raten.
Forms-Units sollen lediglich visuelle Komponenten steuern, abfragen und deren Events verarbeiten. So kann man auch Funktionen aufrufen ohne gleich die Form erzeugen zu müssen. Objekt-Units sind eng verbunden mit den Forms-Units und dies sollte schon vom Namen her zu erkennen sein. Beim Starten einer Form wird von einer Objekt-Unit gefüllt, beim Schliessen füllen die visuellen Komponenten das Objekt (selbstverständlich können zu jeder Zeit irgendwelche Berechnungen durchgeführt werden). Z.B.: fAuto.pas (f = Form) uAuto.pas (u = Unit) Die nur Unit-Forms sollten von einer Ur-Unit abgeleitet sein, die wiederum eine Hauptklasse beinhaltet, so hätten schon mal alle Units zugriff auf eine Instanz der Hauptklasse. Dein HauptObjekt (worum es sich am meisten dreht bei deinem Tool) füllst du bei der Initialisierung des Programms aus der Datenbank und beim Beenden schreibst du die Werte zurück in die Datenbank. An dieser Stelle könnte man natürlich noch weiter gehen und jeder Tabelle ein Objekt zuweisen (die Klasse zu diesem Objekt würde natürlich 1 zu 1 die Spalten nachbilden). Sogar jedem Feld könnte man ... (das führt jetzt zu weit 8) ) |
Hi,
Zitat:
|
Dann schau dir mal eine TNotebook-Komponente an. Eine echt feine Sache, wenn man eine Form für viele verschieden Darstellungen braucht und nix dynamisch obwohl das auch nicht weiter schlimm ist.
Über den PageIndex kann man alles wunderbar steuern. |
Zitat:
|
Zitat:
Grüsse, Daniel :hi: |
Zitat:
|
Dann wohl PageControl nehmen.
Komponenten von der Palette Win 3.1 machen auf manchen System probleme, bzw. sie funktionieren nicht. Es kommt glaub ich sogar ne Message wenn man eine Komponente von der Win 3.1 Palette auswählt und einfügen möchte. Bilde mir ein das da was kommt. Grüsse, Daniel :hi: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:08 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