java - Swing: Canvas 重叠菜单

标签 java swing

我有一个带有菜单栏的 JFrame 和一个覆盖所有剩余表面的 Canvas 。当我单击菜单栏时,菜单在 Canvas 的后面 打开,但我看不到它。有没有人经历过这个?除了调整 Canvas 的大小(我不愿意这样做)还有什么解决办法吗?

谢谢,
弗拉德

最佳答案

您遇到重量级与轻量级问题。

快速修复:

// Call this sometime before you use your menus 
JPopupMenu.setDefaultLightWeightPopupEnabled(false)

Heavyweight vs. Lightweight

关于java - Swing: Canvas 重叠菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/268750/

相关文章:

java - 如果远程调用,Swing 应用程序会在重新连接时挂起

java - 什么 Java Swing 事件可以用来知道应用程序何时完成启动?

java - 无参数构造函数调用 2 参数构造函数

java - 处理程序 postDelayed 只工作一次

java - 为什么 setSkew 会增加文本大小?

java - 如何向现有 XML 文档添加节点

java - 增加 jlabel 在 y 正方向上的高度?

java - 当所有项目都被禁用时禁用 JMenu

java - 每次 JComboBox 更改时如何更新 JLabel?

java - 如何从 GUI 启动 Jzy3d 图?