Die VCL -Technologie von Delphi ermöglicht es vielen Programmierern, sehr schnell loszulegen: Die Tür des Programmierers wird einfach gezogen und einige Pascal -Aussagen. Herzlichen Glückwunsch, Sie können diese große Ursache für die Programmentwicklung bereits durchführen. Nach einer Weile denken Sie jedoch vielleicht nicht. Da Delphi objektorientierte Sprachen unterstützt, werden alle VCL-Komponenten auf der Grundlage von Objektorientierungen ausgelegt Das werden wir hier natürlich weder über die Qualität der Verwendung von Objektorientiermethoden diskutieren, noch möchten wir gegen alle "Karotten und Gemüse" Proteste von relevanten Personen verursachen.
In Delphi werden alle Steuerelemente unter dem Keyword Publish deklariert, was auch der Standardort für die Verwendung der Komponentenprogrammierung ist. Auf diese Weise möchte ein Form2 auf eine Steuerung in Form1 (falls es sich um Unit1 handelt), solange die Verwendung von Unit1 in Ordnung ist. Wenn ich jedoch eines Tages versehentlich den Namen der Kontrolle in Form2 ändere, würde nicht alle Codes in Form1 umgeschrieben? Daher befürworte ich, diese Kontrollen als spezielle Elemente der Formklasse zu verwenden, und externe Formen können über die von der Formularklasse veröffentlichten Eigenschaften auf die in ihnen veröffentlichten Bedienelemente zugreifen.
Zum Beispiel:
Tform1 = Klasse (tform)
Privte
Button1: Tbutton
Ende;
Dieses Design löst jedoch die hohe Verkapselung von Mitgliedern Tatsache ist auch dieses Problem gelöst
Initialisierung
Registerklassen hinzufügen ([Tbutton])
Das ist in Ordnung.
Natürlich ist eine solche objektorientierte Entwurfsmethode komplizierter als die vorherige "Drag" -Methode, aber wir haben ein hohes Maß an Kapselung erreicht, was ich denke, was es wert ist, was ist mit euch?