0

我在不断重绘的框架上使用 AWT PopupMenu(这是一个游戏),但是每当 PopupMenu 显示时,父框架就会冻结。有没有办法禁用它?

4

1 回答 1

1

我假设应用程序的其余部分是在 Swing 中制作的,并且您将 AWT 弹出菜单与 Swing 组件结合使用。

我遇到了相当多的 AWT PopMenu 问题。您是否需要在应用程序范围之外显示 Popmenu?如果您只需要能够在您的应用程序 (JFrame) 中显示它,那么您最好将 JComponent 放在所有其他面板的顶部(使用 JLayredPane)并在那里绘制您自己的弹出菜单。

更简单的是在 Java 7 中使用 JLayer 来获得相同的效果(如果您不是在 Java 7 上而是在 Java 5 或 6 上,则使用 JXLayer)。

上述方法也比 AWT 弹出菜单更强大,因为您可以控制绘图。因此,例如使其半透明或赋予其圆形边缘变得轻而易举。

于 2012-06-09T12:36:03.620 回答