Swing/MenuItemToolTipText のバックアップ(No.2)
- バックアップ一覧
- 差分 を表示
- 現在との差分 を表示
- 現在との差分 - Visual を表示
- ソース を表示
- Swing/MenuItemToolTipText へ行く。
- category: swing folder: MenuItemToolTipText title: JMenuItemにToolTipテキストを設定する tags: [JToolTip, JMenuItem, JMenu, JCheckBoxMenuItem, JRadioButtonMenuItem, JMenuBar, LookAndFeel] author: aterai pubdate: 2023-06-26T02:57:21+09:00 description: JMenuItemやJMenu、JCheckBoxMenuItemなどのMenuElementにToolTipテキストを設定します。 image: https://drive.google.com/uc?id=1bQbmZoUzxYPFYxgUeEql4ont7_e_w2o5
概要
JMenuItemやJMenu、JCheckBoxMenuItemなどのMenuElementにToolTipテキストを設定します。
Screenshot

Advertisement
サンプルコード
private static JMenuBar createMenuBar() {
JMenu menu = new JMenu("File");
menu.setToolTipText("File JMenu ToolTipText");
menu.add("JMenuItem").setToolTipText("JMenuItem ToolTipText");
JMenu sub1 = new JMenu("JMenu(Default)");
sub1.setToolTipText("JMenu Default ToolTipText");
sub1.add("JMenuItem1").setToolTipText("JMenuItem1 ToolTipText");
sub1.add("JMenuItem2").setToolTipText("JMenuItem2 ToolTipText");
menu.add(sub1);
JMenu sub2 = new JMenu("JMenu()") {
@Override public String getToolTipText() {
return getPopupMenu().isVisible() ? null : super.getToolTipText();
}
};
sub2.setToolTipText("JMenu ToolTipText");
sub2.add("JMenuItem1").setToolTipText("JMenuItem1 ToolTipText");
sub2.add("JMenuItem2").setToolTipText("JMenuItem2 ToolTipText");
menu.add(sub2);
JMenuItem item2 = new JCheckBoxMenuItem("JCheckBoxMenuItem", true);
item2.setToolTipText("JCheckBoxMenuItem ToolTipText");
menu.add(item2);
JMenuItem item3 = new JRadioButtonMenuItem("JRadioButtonMenuItem", true);
item3.setToolTipText("JRadioButtonMenuItem ToolTipText");
menu.add(item3);
JMenuBar mb = new JMenuBar();
mb.setToolTipText("JMenuBar ToolTipText");
mb.add(menu);
mb.add(LookAndFeelUtils.createLookAndFeelMenu());
return mb;
}
View in GitHub: Java, Kotlin解説
JMenuItem、JCheckBoxMenuItem、JRadioButtonMenuItem、JMenuBarJComponent#setToolTipText(...)でToolTipテキストを設定可能
JMenuJComponent#setToolTipText(...)でToolTipテキストを設定可能JMenu(Default):JMenuをクリックするまでJPopupMenuが表示されないMotifLookAndFeel以外ではJMenuのJPopupMenu表示のタイミングによってその背後にJToolTipが表示される場合があるJMenu():JMenu#getToolTipText()をオーバーライドしてJMenuのJPopupMenuが表示されている場合はToolTipテキストを表示しないよう設定- 別メニューの
ToolTipテキストが表示されている状態でこのJMenu上にマウスカーソルを移動するとJPopupMenuとJToolTipの両方が表示状態になる場合がある
- 別メニューの