8.5.12 | JToolTip |
Ein Tooltip, ein beschreibender Text, erscheint, wenn ein Benutzer die Maus eine längere Zeit auf einer entsprechenden Komponente lässt.
Jede Swing-Komponente kann einen solchen Hinweistext besitzen. Aktiviert wird dieser mittels der Methode setToolTipText(String text) in der entsprechenden Komponente oder mithilfe des Aufrufes
ToolTipManager.registerComponent(JComponent component).
Erfolgt keine Aktivierung, nutzt auch das Überschreiben der Methode getToolTipText() nichts.
Die Implementierung des JToolTip entscheidet dabei selbst, ob sie als Lightweight oder Heavyweight dargestellt werden kann. Die Heavyweight-Variante wird beispielsweise dann benötigt, wenn kein Platz für den Hinweistext da ist, um ihn innerhalb des Fensters darzustellen. In diesem Fall muss der angezeigte Text über das Fenster hinausragen, wodurch ein zusätzliches Fenster für ihn benötigt wird.
Ein JToolTip unterstützt wie Buttons und Labels HTML.
Um die Position des JToolTip zu ändern (Swing berechnet ansonsten die Position relativ zu der Mausposition selbst), muss man die Methode getToolTipPosition(MouseEvent) überschreiben.
JButton button = new JButton("Ein Button"); button.setToolTipText("<html>Ein <i>HTML</i>-Tooltip</html>"); getContentPane().add(button);