我在一个不断重绘的框架上使用AWT PopupMenu (这是个游戏),但每当PopupMenu显示时,父框架就会冻结。有没有办法禁用它?
发布于 2012-06-09 20:36:04
我假设应用程序的其余部分是在Swing中创建的,并且您正在结合使用AWT弹出菜单和Swing组件。
我也遇到过AWT PopMenu的问题。您需要在应用程序的边界之外显示弹出菜单吗?如果您只需要在您的应用程序(JFrame)中显示它,那么您可能更好的做法是在所有其他面板上放置一个JComponent (使用JLayredPane)并在其中绘制您自己的弹出菜单。
更简单的方法是在Java7中使用JLayer来达到同样的效果(如果不是在Java7上,而是在Java5或6上,则可以使用JXLayer )。
上面的方法也比AWT弹出菜单更强大,因为你可以控制绘图。因此,例如,让它变得半透明或使它的边缘变得圆润就变得轻而易举。
https://stackoverflow.com/questions/10960904
复制相似问题