gpt4 book ai didi

java - JMenuItem 的工具提示

转载 作者:行者123 更新时间:2023-11-30 05:50:02 28 4
gpt4 key购买 nike

我将菜单添加到工具栏,如下所示:

    JMenuBar menu = new JMenuBar();
JMenu actions = new JMenu("Aktionen");
Icon menuIcon = ImageUtilities.loadImageIcon("pathToIcon", true);
actions.setIcon(menuIcon);

// Add
JMenuItem addItem = new JMenuItem("Add");
Icon addIcon = ImageUtilities.loadImageIcon("pathToIcon", true);
addItem.setIcon(addIcon);
addItem.setToolTipText("Add new Item");
addItem.addActionListener(new ActionListener() {

@Override
public void actionPerformed(ActionEvent e) {
AddItemAction someAction = new AddItemAction();
someAction.actionPerformed(new ActionEvent(this, ActionEvent.ACTION_PERFORMED, null) {
// Foo
});
}
});

menu.add(actions);
actions.add(addItem);
toolbar.addSeparator();
toolbar.add(menu);

基本上,它工作正常。但是,它从不显示工具提示(“添加新项目”)。有什么提示吗?

编辑:以防万一有同样问题的人偶然发现这个问题:这是 L&F,正如我从一开始就应该怀疑的那样。它具有用于显示 JMenuItems 的工具提示的属性;它默认为 false。

最佳答案

sscce以下工作正常。如果您仍有问题,请编辑您的问题以包含一个示例来展示您描述的问题。

附录:我将 menu 添加到 JToolBar,它仍然有效,无论是停靠还是自由 float 。

import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JToolBar;

/** @see http://stackoverflow.com/a/14630345/230513 */
public class Test {

private void display() {
JFrame f = new JFrame("Test");
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JMenuBar menu = new JMenuBar();
JMenu actions = new JMenu("Aktionen");
JMenuItem addItem = new JMenuItem("Add");
addItem.setToolTipText("Add new Item");
menu.add(actions);
actions.add(addItem);
JToolBar toolbar = new JToolBar("Tools");
toolbar.add(menu);
f.add(toolbar);
f.pack();
f.setLocationRelativeTo(null);
f.setVisible(true);
}

public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {

@Override
public void run() {
new Test().display();
}
});
}
}

关于java - JMenuItem 的工具提示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14630112/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com