0

我有JCheckBox一个程序(标记为“使用 MiniTimer”),当右键单击时,会显示一个JPopupMenu选项“关闭时显示”、“最小化时显示”、“关闭或最小化时显示”和“不要使用 MiniTimer ”。当它被左键单击时,我怎样才能让它JPopupMnu出现在下面?JCheckBox

请注意,我尝试设置JCheckBoxto的 actionPerformed 方法miniTimerPopupMenu.setVisible(true);,但 Merel 使JPopupMenu出现在屏幕的左上角,即使这样,它也不会注册任何交互。有没有人想分享任何经验或建议?

4

2 回答 2

1

阅读 Swing 教程中关于弹出弹出菜单的部分以获取工作示例。本教程使用 popup.show(...)。不知道是不是这个区别。

如果您需要更多帮助,请发布说明问题的 SSCCE (http://sscce.org)。

于 2010-10-10T16:16:19.140 回答
1

我认为您应该使用 setLocation() 方法设置 miniTimerPopupMenu 的位置,我认为以下代码可以解决问题

    miniTimerPopupMenu.setLocation((int)jCheckBox.getLocation().getX(),(int)jCheckBox.getLocation().getY()-10);
    miniTimerPopupMenu.setVisible(true);

然后您可以使用顶部弹出菜单的 y 和 x 位置。

希望这有效

于 2010-10-10T09:27:48.127 回答