Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Saubere Programmierung mit Delphi (https://www.delphipraxis.net/110268-saubere-programmierung-mit-delphi.html)

sx2008 16. Mär 2008 10:45

Re: Saubere Programmierung mit Delphi
 
Ich würde die Klasse TBackground nicht mit einem Formular in Verbindung bringen, sondern nur mit einem Canvas. Die Größe des Canvas wird dann über 2 Properties Width & Height mitgeteilt.
Vorteil: die Klasse arbeitet auch mit Printer.Canvas und TImage.Canvas zusammen.

Ausserdem sollten die beiden Farben auch als Property freigelegt werden; die Übergabe im Konstruktor ist so ja ziemlich restriktiv.

Ausserdem sollten deutlich mehr Background-Muster (Karos, Linien, Dreiecke, Sechsecke) programmiert werden, damit sich der Aufwand für eine Klasse überhaupt lohnt.

Christian Seehase 16. Mär 2008 11:15

Re: Saubere Programmierung mit Delphi
 
Moin Sebastian,

Zitat:

Zitat von Phoenix
Des öfteren Sucht man eine Deklaration um schnell dort hin zu gelangen. Ich würde dann z.B. immer nach "FColor:" suchen.

:gruebel:
Um eine Deklaration zu finden genügt es doch die entsprechende Variable mit STRG anzuklicken.

Muetze1 16. Mär 2008 12:16

Re: Saubere Programmierung mit Delphi
 
Zitat:

Zitat von Christian18
Muetze1, ich habe da mal ne Frage. Warum machst du alle Eigenschaften der Klasse TBackground über property öffentlcih und die Form nicht?

Wie könnte ich denn, wo mein Vorschlag die Form nicht in der Klasse hält? Die Klasse malt was auf eine Form - warum sollte ich die Klasse auf eine Instanz festlegen und somit beschränken? Somit übergebe ich einfach die Form in den beiden Routinen. Damit hat die TBackground Instanz immer die Farb- bzw. Hintergrundeinstellungen und kann dann auch x beliebige Formulare angewendet werden.

Den Constructor habe ich entfernt, weil er zu restriktiv ist, wie auch schon sx2008 geschrieben hat. Du kannst die Klasse anlegen und die farblichen Einstellungen jederzeit ändern bzw. anpassen.

@sx2008: Das mit dem Canvas war auch mein erster Ansatz, aber er nutzt die Color Eigenschaft der Form, was auch entsprechend Windows als Window Color mitgeteilt wird. Von daher konnte ich mich nicht auf ein TCanvas beschränken.


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:26 Uhr.
Seite 3 von 3     123   

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