8

マウスがセルの 1 つの上にあるときはいつでもツールチップを表示するように実装JTreeTableしました。MouseMotionListenerただし、セルをクリックしてもツールチップは表示されません。イベントにテキストを設定するなど、いくつかのことを試しましたが、うまくいきませmouseClickedん。mouseReleased私はこのコードを見つけました -

Action toolTipAction = treeTable.getActionMap().get("postTip");

if(toolTipAction != null){

   ActionEvent postTip = new ActionEvent(treeTable,ActionEvent.ACTION_PERFORMED, "");
   toolTipAction.actionPerformed(postTip);    
}

mouseReleasedメソッドで使用すると、が作成されますtooltip popupが、間違った位置にあります。getTooltipLocation次に、でメソッドをオーバーライドしようとしましたがJTreeTable、これはmouseMovedイベントに対しては正常に機能しますが、上記のメソッドでは呼び出されません。誰でもこれを行う方法に光を当てることができますか?

ありがとうアンディ

4

2 に答える 2

0

org.apache.jorphan.gui.JTreeTable は javax.swing.JComponent を拡張します javax.swing.JComponent#setToopTipText() は機能しませんか? Action を使用したいのですが、ツールチップを使用したいと思いますか? 複数の UI アクションがそれを共有する必要がある場合は、Action を使用します。

于 2011-09-08T20:57:28.013 に答える