vor

Tipps und Tricks

weiter
Apollon

persönliche Erfahrungen

Beim Programmieren aber auch beim Vergleichen mit anderen Projekten findet man immer wieder einige Anregungen oder sogar Lösungen, die man in seine eigenen Projekte übernehmen kann.

Hier ein paar Tipps, die eigentlich bei jedem Projekt beachtet werden sollten:
Namen des Projekts
Bei der Namensvergabe des Projekts sollte man sowohl für die .pas-Datei als auch für die .dpr-Datei sinnvolle Namen wählen, weil diese z. B. in MessageBoxes u. ä. erscheinen.
Komponentennamen
Komponentennamen sollte man sofort nach der Erzeugung anschaulich umbenennen (oder nie!)
Position des Fensters
Die Fenster erscheinen in Programm genau an der Stelle, an der die Form während des Compilierens war. Also sollte man große Formulare weit links oben positionieren, damit auch Anwender mit kleiner Bildschirmauflösung das Fenster so vollständig wie möglich sehen können.
Fenstergröße fixieren
Wenn man dem Fenster die optimale Größe und Form zugewiesen hat und nicht will, dass der Anwender diese Gestaltung zerstört, dann sollte man die BorderStyle-Eigenschaft der Form auf bsSingle stellen und überflüssige BorderIcons ausschalten.
Groß- und Kleinschreibung
Bei der Windows-Version von Delphi spielt die Groß- und Kleinschreibung keine Rolle. Will man aber später den Quelltext vielleicht doch auch in der Linux-Version Kylix anwenden, dann sollte man sich doch ganz konsequent an eine Schreibweise halten.
Eingabefehler
Mit TRY-EXCEPT oder mit den Beispielen in diesem Workshop sollte man stets eventuelle Eingabefehler abfangen.
Ausgaben formatieren
Ausgaben in Form von reellen Zahlen sollten stets mit FloatToStrF() formatiert werden.
SetFocus
Es ist zu empfehlen, SetFocus am Ende der Programmierung der Komponente als Eigenschaft zuweisen, wo die nächste Aktion des Anwenders erwartet wird.
TabOrder
Mit der Eigenschaft TabOrder kann die Reihenfolge festlegt werden, in der die Tab-Taste den Focus setzt.
Menüs und SpeedButtons
Umfangreiche Projekte sollten ein Menü haben oder noch besser SpeedButtons an geeigneten Stellen.
gefährliche oder unwiderufliche Aktionen
Bei gefährlichen oder unwideruflichen Aktionen sollte mit einer MessageBox nachgefragt werden, ob das wirklich passieren soll.
unsinnige Buttons
Bei unsinnige Buttons (z.B. "löschen", wenn noch gar nichts da ist) sollte die Eigenschaft visible zeitweise auf false gesetzt werden, bis sie Sinn machen.
konkrete Hilfe
Informationen zu Begriffen oder Funktionen im Quelltext bekommt man, wenn man die Schreibmarke auf das Wort stellt und F1 drückt.
Hier noch ein paar weitere Anregungen:
eigenes Icon
Man sollte seinen Projekten durch ein eigenes Icon eine eigene Note verleihen. Jedem Formular kann über die Icon-Eigenschaft ein Symbol zugwiesen werden, das dann links oben als Systemmenüfeld erscheint. Dem gesamten Projekt gibt man im Menü "Projekt" Befehl "Optionen" Register "Icon" ein individuelles Icon für die Exe-Datei. Die Icons kann man im Internet kostenlos aus geeigneten Sammlungen kopieren oder selbst mit einem Icon-Editor erstellen.
leere Radiobuttons
Wenn man für ein Quiz drei leere Radiobuttons zeigen will, kann man allen dreien zum Anfang die Eigenschaft Checked auf false setzen.
GroupBox statt RadioGroups
Hat man auf einem Formular mehr als eine Gruppe von Radiobuttons, die unabhängig voneinander benutzt werden sollen, so muss man statt RadioGroups besser je eine GroupBox nehmen. Damit vermeidet man, dass beim Anklicken eines Radiobuttons in der nächsten Gruppe der gecheckte Button in der ersten Gruppe wieder auf false gesetzt wird.
Programmabsturz beim Compilieren
Wenn ein gerade compiliertes Projekt getestet wird stürzt Delphi mitunter ab (z.B. regelmäßig beim Test von TRY-EXCEPT-Programmteilen). Man muss dann über den Befehl "Programm Reset" den Compiler verlassen. Zu diesen Effekten kommt es nicht, wenn man die Exe-Datei allein startet.
StringGrid
Bei einer Tabelle (Komponente StringGrid) muss die Option goEdit auf den Wert true gestellt werden, wenn der Anwenden Daten eingeben können soll. Dann empfiehlt es sich aber auch, die Option goTabs auch auf true zu stellen, damit der Anwender wie bei Tabellen gewohnt von Zelle zu Zelle springen kann.
Farben
Man kann viele Farben über ihren englichen Namen aufrufen (z. B. clRed, clGreen, clBlue, clYellow, clFuchsia, clBlack).
Die Alternative ist die Angabe als hexadezimale Zahl (mit vorangestelltem Dollar-Zeichen) Dabei bedeuten die ersten beiden Ziffern die Farbpalette, die zweiten beiden blau, dann grün und rechts stehen zwei Ziffer für rot. Eine gleichmäßige Aufhellung von blau zu weiß lässt sich also darstellen mit:
for i := 0 to 255 do Farbe := $00FF0000 + i*(256 + 1);
Dabei werden die rechten beiden Zweiergruppen immer um einen Wert erhöht.
vor

Inhaltsverzeichnis

weiter