Kennen Sie das? Sie arbeiten an einer komplexen VCL-Anwendung, tüfteln an jedem Detail, und plötzlich tauchen diese lästigen, gelben Leitkegel auf – die Design Time Hints! Manchmal sind sie hilfreich, aber oft verdecken sie wichtige Bereiche Ihrer Form oder stören einfach nur den Workflow. Keine Sorge, Sie sind nicht allein! Viele Entwickler empfinden diese „Pylonen” als störend. In diesem Artikel zeige ich Ihnen verschiedene Möglichkeiten, wie Sie diese Design Time Hints in Ihrem VCL-Programm deaktivieren können.
Was sind eigentlich diese „Pylonen”?
Diese kleinen, gelben Leitkegel, offiziell als Design Time Hints bekannt, werden von der Delphi IDE verwendet, um Ihnen im Design-Modus Hinweise zu geben. Beispielsweise zeigen sie, welche Komponenten an einem Layout-Container ausgerichtet sind oder welche Aktionen mit einem ActionList verknüpft sind. Die Idee dahinter ist, den Entwicklungsprozess zu vereinfachen und Fehler zu vermeiden. In der Praxis können sie jedoch schnell unübersichtlich werden, besonders bei komplexen Layouts.
Warum sind sie manchmal störend?
Die Gründe für die Ablehnung der Design Time Hints sind vielfältig:
* Visuelle Unordnung: Auf großen, komplexen Formularen können die vielen kleinen Icons schnell unübersichtlich werden und die Sicht auf die eigentlichen UI-Elemente behindern.
* Verlangsamung des Workflows: Manchmal verdecken die Hinweise wichtige Bereiche der Form, sodass Sie umständlich hin- und herzoomen oder die Hints kurzzeitig deaktivieren müssen, um an die darunter liegenden Komponenten zu gelangen.
* Irrelevanz: Oft zeigen die Hints Informationen an, die für Sie in dem Moment irrelevant sind. Beispielsweise wissen Sie bereits, dass eine bestimmte Komponente ausgerichtet ist, und benötigen den Hinweis nicht.
Die Methoden zur Deaktivierung der Pylonen
Es gibt verschiedene Möglichkeiten, die Design Time Hints zu deaktivieren. Die beste Methode hängt von Ihren persönlichen Vorlieben und den spezifischen Anforderungen Ihres Projekts ab. Wir werden uns die folgenden Optionen genauer ansehen:
1. **Deaktivierung in den IDE-Optionen (global):** Dies ist die einfachste und schnellste Methode, um die Design Time Hints für alle Ihre Projekte zu deaktivieren.
2. **Deaktivierung pro Formular (lokal):** Wenn Sie die Hints nur für bestimmte Formulare deaktivieren möchten, ist dies die richtige Wahl.
3. **Verwendung eines Editorsettings.cfg Files:** Diese Methode erlaubt es, IDE-Einstellungen (auch die für Design Time Hints) im Repository mit dem Projekt zu teilen.
4. **Verwendung eines Expert-Tools (z.B. DDevExtensions):** Einige Expert-Tools bieten zusätzliche Optionen zur Steuerung der Design Time Hints, z. B. die Möglichkeit, sie basierend auf bestimmten Kriterien ein- oder auszublenden.
1. Globale Deaktivierung in den IDE-Optionen
Dies ist die einfachste und schnellste Methode, um die Design Time Hints zu deaktivieren:
1. Öffnen Sie die Delphi IDE.
2. Gehen Sie zu **Tools -> Optionen…**
3. Im Optionsdialog navigieren Sie zu **Designer -> Ansicht**.
4. Deaktivieren Sie die Option „**Design Time Hints anzeigen**”.
5. Klicken Sie auf „OK”, um die Änderungen zu speichern.
Ab sofort werden die Design Time Hints in allen Ihren Projekten nicht mehr angezeigt. Beachten Sie, dass diese Änderung global gilt und sich auf alle Ihre Projekte auswirkt. Wenn Sie die Hints später wieder aktivieren möchten, müssen Sie diese Option erneut aktivieren.
2. Lokale Deaktivierung pro Formular
Wenn Sie die Design Time Hints nur für bestimmte Formulare deaktivieren möchten, können Sie dies über die Formular-Eigenschaften tun:
1. Öffnen Sie das Formular, für das Sie die Hints deaktivieren möchten.
2. Wählen Sie das Formular selbst aus (stellen Sie sicher, dass Sie *nicht* eine Komponente innerhalb des Formulars ausgewählt haben). Sie können dies tun, indem Sie im Object Inspector auf den Formularnamen klicken oder indem Sie in einen leeren Bereich des Formulars klicken.
3. Im Object Inspector suchen Sie nach der Eigenschaft „**FormStyle**”.
4. Setzen Sie die Eigenschaft „**FormStyle**” auf `fsMDIChild` (Multiple Document Interface Child) oder `fsStayOnTop`. **WICHTIG:** Diese Option ändert das Verhalten des Formulars! Sie beeinflusst, wie das Formular im Verhältnis zur Hauptanwendung angezeigt wird. Wenn Sie das Standardverhalten beibehalten möchten, können Sie diese Option nicht verwenden. Dies ist eher eine „Workaround” als eine direkte Lösung.
**Warum funktioniert das?** Delphi zeigt Design Time Hints in der Regel nur für Formulare an, die einen `fsNormal` FormStyle haben. Durch Ändern des FormStyle werden die Hints unterdrückt.
**Alternative (etwas komplizierter):**
Eine andere, sauberere Methode ist das Hinzufügen einer Direktive im Code des Formulars:
1. Öffnen Sie die Unit-Datei des Formulars (z.B. `Unit1.pas`).
2. Fügen Sie die folgende Compiler-Direktive im `implementation`-Abschnitt direkt vor der Formular-Klassendeklaration ein:
„`delphi
{$HINTS OFF}
„`
3. Fügen Sie die Direktive `{$HINTS ON}` nach der Formular-Klassendeklaration ein, um die Hints für andere Units nicht zu deaktivieren.
„`delphi
{$HINTS OFF}
type
TForm1 = class(TForm)
…
private
{ Private declarations }
public
{ Public declarations }
end;
{$HINTS ON}
„`
Diese Methode deaktiviert die Design Time Hints nur für dieses spezifische Formular, ohne das Verhalten des Formulars zu ändern oder globale Einstellungen zu beeinflussen.
3. Verwendung eines Editorsettings.cfg Files
Ab Delphi 10.2 Tokyo gibt es die Möglichkeit, IDE-Einstellungen in einem `Editorsettings.cfg` File abzulegen und so im Repository mit dem Projekt zu teilen. Das ist besonders nützlich für Teams, da so einheitliche IDE-Einstellungen sichergestellt werden können.
1. Öffnen Sie die Delphi IDE.
2. Gehen Sie zu **Tools -> Optionen…**
3. Im Optionsdialog navigieren Sie zu **Umgebung -> Optionen importieren/exportieren**.
4. Wählen Sie „Aktuelle Einstellungen exportieren” und speichern Sie die Datei als `Editorsettings.cfg` im Projektordner.
5. Öffnen Sie die `Editorsettings.cfg` Datei mit einem Texteditor.
6. Suchen Sie nach dem Eintrag `ShowDesignTimeHints=true`.
7. Ändern Sie den Wert auf `ShowDesignTimeHints=false`.
8. Speichern Sie die Datei.
Delphi wird beim Öffnen des Projekts die `Editorsettings.cfg` Datei lesen und die Einstellungen entsprechend anpassen, inklusive der Anzeige der Design Time Hints. Wenn das File im Repository liegt, werden die Einstellungen für alle Teammitglieder übernommen.
4. Verwendung eines Expert-Tools (z.B. DDevExtensions)
Es gibt verschiedene Expert-Tools für Delphi, die zusätzliche Funktionen zur Anpassung der IDE bieten. Ein beliebtes Beispiel sind die DDevExtensions. Diese Tools bieten oft detailliertere Steuerungsmöglichkeiten für die Design Time Hints, z. B. die Möglichkeit, sie basierend auf bestimmten Kriterien ein- oder auszublenden (z.B. nur für bestimmte Komponententypen).
Die Installation und Konfiguration von Expert-Tools ist jedoch ein separater Prozess und hängt vom jeweiligen Tool ab. Lesen Sie die Dokumentation des jeweiligen Tools für weitere Informationen.
Fazit
Die Design Time Hints in der Delphi IDE können nützlich sein, aber auch störend. Glücklicherweise gibt es verschiedene Möglichkeiten, sie zu deaktivieren oder anzupassen. Wählen Sie die Methode, die am besten zu Ihren Bedürfnissen und Ihrem Workflow passt. Ob globale Deaktivierung, Formular-spezifische Anpassung oder die Verwendung eines Expert-Tools – Sie haben die Kontrolle über Ihre Entwicklungsumgebung! Probieren Sie die verschiedenen Methoden aus und finden Sie die für Sie optimale Lösung, um die lästigen „Pylonen” in Ihrem VCL-Programm loszuwerden und Ihren Entwicklungsprozess zu optimieren.
Denken Sie daran, die für Sie beste Lösung hängt von Ihren individuellen Präferenzen und dem Kontext Ihres Projekts ab. Viel Erfolg beim Programmieren!