【问题标题】:JMenuPopup not accurte?菜单弹出不准确?
【发布时间】:2013-04-21 16:47:21
【问题描述】:

问题图片:

http://gyazo.com/56c4f7f5fc10805695fc80de567b92c5.png

    private JButton settingsButton = new JButton("Settings");

    private JPopupMenu settings = new JPopupMenu();

    private JMenuItem accounts = new JMenuItem("Accounts");
settings.add(accounts);     
        settingsButton.addMouseListener(new MouseAdapter() {
                public void mousePressed(MouseEvent e) {
                    settings.show(e.getComponent(), 0, 0);
                }
            });

所以正如您在图片上看到的,我认为这并不准确。有没有(更好的)方法可以将它放在正确的位置?

我点击了 JButton:“设置”,它应该会弹出一点点。

【问题讨论】:

  • 遇到问题时发布 SSCCE。这在你上一篇文章中也提到过。当您无法努力正确描述您的问题时,我以及大多数用户将继续忽略帖子。我们没有时间猜测您可能会或可能不会做什么。根据定义,当您遇到问题时,您不知道哪里出了问题,因此您不知道那几行随机代码是否会导致问题。
  • @user2192658 你解决了吗?

标签: java swing debugging jbutton jpopupmenu


【解决方案1】:

您最好使用JMenuBar,然后将JMenusJMenuItems 添加,重新发明轮子没有意义:

JMenuBar menubar = new JMenuBar();
JMenu settings = new JMenu("Settings");
JMenuItem accounts = new JMenuItem("Accounts");
settings.add(accounts);
menubar.add(settings);
myFrame.setJMenuBar(menubar);

【讨论】:

    猜你喜欢
    • 2011-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-15
    • 1970-01-01
    • 1970-01-01
    • 2017-11-07
    相关资源
    最近更新 更多