Skip to Main Content

Java SE (Java Platform, Standard Edition)

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

custom tooltip not showing

843804Oct 3 2002 — edited Mar 14 2005
Hi all,
i have a custom component (extending JComboBox) overriding the getToolTipText(MouseEvent me) method to provide custom tooltips.
Yet the tooltip does not show. (a test println in the getToolTipText methods showed it was not even called). I also register the component with the ToolTipManager. Did i forget something?

Thanks for your help,

Wolfgang

===============

package de.tum.in.abe.util;

import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.awt.event.MouseEvent;
import javax.swing.JComboBox;
import javax.swing.ToolTipManager;

/**
* This class represents a status bar as used throughout the ABE
* application, e.g. in {@link de.tum.in.abe.core.gui.StdGUI} or in
* {@link de.tum.in.abe.plugin.PluginFrame}
* @version $Id$
* @author Wolfgang Herder
*/
public class ABEStatusBar extends JComboBox implements ItemListener {

/**
* Initialize status bar: Add <code>this</code>
* as <code>ItemListener</code>.
*/
public ABEStatusBar() {
super();
this.addItemListener(this);
ToolTipManager.sharedInstance().registerComponent(this);
}

/**
* Show status message.
* @param The message to show.
*/
public void showStatus(String message) {
insertItemAt(message, 0);
setSelectedIndex(0);
}

/**
* Make sure the first item is always selected.
* @see java.awt.event.ItemListener#itemStateChanged(ItemEvent)
*/
public void itemStateChanged(ItemEvent ie) {
if (getSelectedIndex() != 0) {
setSelectedIndex(0);
}
}

/**
* Override
* {@link javax.swing.JComponent#getToolTipLocation(java.awt.event.MouseEvent)}
* to generate dynamic tooltip text (always show first item's text).
* @return appropriate tooltip text
*/
public String getToolTipText(MouseEvent me) {
if (this.getItemAt(0) == null) {
return "";
}
else {
return (String) this.getItemAt(0);
}
}
}
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Apr 11 2005
Added on Oct 3 2002
6 comments
253 views