![]() |
TMainmenue: Hint wird nicht angezeigt.
@Alle
In das Projekt Delphi Cleaner habe ich ein TMainmenue eingefügt. Die User wollen ein Hint dazu sehen. Ich habe die Hints enabled und den Text zugewiesen. Porblem: Jedoch erscheinen die Hints des TMenues nicht. (Source mit D7 und TD2006 compiliert). Ist eine Eigenschaft zu setzten die nicht im Eigenschaftenfenster zu sehen ist? Oder bin ich einem Bug auf der Spur? Geht es bei jemandem? Beste Grüße an die DP! Go2EITS |
Re: TMainmenue: Hint wird nicht angezeigt.
Imho kannst du in einem TMainMenu keine Hints anzeigen. Du könntest aber eine StatusBar in dein Programm integrieren und diese mit dem MainMenu verknüpfen, dann wird der Hint-Text dort angezeigt.
|
Re: TMainmenue: Hint wird nicht angezeigt.
@Balu der Bär
Danke für Deine schnelle Antwort. Eine gute Idee! (In den Eigenschaften ist ein Hinteintrag schon möglich, die Eigenschaft Showhint fehlt dagegen.) Ich sehe mir die Eigenschaften an: Ein "MouseoverMenueeintrag" sehe ich leider nicht. Die Eigenschaften sind recht dürftig. Mit "Onclick" könnte ich die Daten in einem Panel anzeigen, aber da ist dann die Aktion leider schon ausgeführt. |
Re: TMainmenue: Hint wird nicht angezeigt.
Zitat:
|
Re: TMainmenue: Hint wird nicht angezeigt.
Und nu? Das Problem besteht weiterhin.
|
Re: TMainmenue: Hint wird nicht angezeigt.
Sieh dir mal das Ereignis "Application.OnHint" an. Entweder kannst du es im Sourcecode zuweisen oder du musst ein AppEvents-Objekt benutzen.
|
Re: TMainmenue: Hint wird nicht angezeigt.
@Flocke
danke für den Hinweis: In der Delphi Hilfe bin ich dank Deines Hinweises fündig geworden: Application.OnHint Ich glaube, dass ist es. Das muss ich mir genau ansehen, wie ich das in meinem Projekt umsetzte. Vielen Dank! :thumb: Go2EITS |
Re: TMainmenue: Hint wird nicht angezeigt.
Normal etwa so:
Delphi-Quellcode:
// Oben im Hauptformular
type TMainForm = class(TForm) // ... public procedure DisplayHint(Sender: TObject); end; // Implementierung procedure TMainForm.DisplayHint(Sender: TObject); begin if Application.Hint <> '' then begin StatusBar.SimplePanel := True; StatusBar.SimpleText := Application.Hint; end else StatusBar.SimplePanel := False; end; // Zuweisung procedure TMainForm.FormCreate(Sender: TObject); begin // ... Application.OnHint := DisplayHint; // ... end; |
Re: TMainmenue: Hint wird nicht angezeigt.
@Flocke
Danke Flocke! Wirklich ein vorbildiches Beispiel, mit Declaration, Implementation und Aufruf. Das bekomme ich sogar mal in meinen Code rein. :thumb: Kleine Frage: Wieso "StatusBar.SimplePanel := True;" und dann False? Die Statusbar wird doch immer angezeigt, oder? :gruebel: |
Re: TMainmenue: Hint wird nicht angezeigt.
Weil das nur funktioniert, wenn die Eigenschaft SimplePanel der Statusbar auf True steht.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:35 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