Java JMenu上的Applet绘制

Java JMenu上的Applet绘制,java,swing,applet,Java,Swing,Applet,我有一个扩展了JFrame的类,它包含一个JMenuBar和一些组件,其中最里面显示一个Applet。加载小程序后,单击菜单栏上的一个菜单,我发现菜单的下拉部分隐藏在小程序下面 下面是一张图片来说明这一点: 我怀疑发生这种情况的原因是因为我将重量级的Applet组件与轻量级的其他组件混合在一起。我对此进行了研究,从我访问的资源来看,答案似乎是:不要这样做或验证顶级容器 我试过后者,但没有用。以下是我的代码(它位于多线程环境中): 不这样做不是一个选项,因为我正在加载的小程序不是我的,因为我没有

我有一个扩展了
JFrame
的类,它包含一个
JMenuBar
和一些组件,其中最里面显示一个
Applet
。加载小程序后,单击菜单栏上的一个菜单,我发现菜单的下拉部分隐藏在小程序下面

下面是一张图片来说明这一点:

我怀疑发生这种情况的原因是因为我将重量级的
Applet
组件与轻量级的其他组件混合在一起。我对此进行了研究,从我访问的资源来看,答案似乎是:不要这样做或验证顶级容器

我试过后者,但没有用。以下是我的代码(它位于多线程环境中):

不这样做不是一个选项,因为我正在加载的小程序不是我的,因为我没有创建它,我只是在加载它。底线是,我不能让小程序成为
JApplet
或其他组件。然而,包装它可能是一种可能性


有人对我如何解决这个重叠问题有什么建议吗?

我找到了解决问题的方法。这两行就行了

JPopupMenu.setDefaultLightWeightPopupEnabled(false);
ToolTipManager.sharedInstance().setLightWeightPopupEnabled(false);

在AWT/SwingI中搜索混合重量级和轻量级,我已经看过了,根据它,我甚至不必担心它,因为我正在使用Java7。然而,我仍然有这个问题。
JPopupMenu.setDefaultLightWeightPopupEnabled(false);
ToolTipManager.sharedInstance().setLightWeightPopupEnabled(false);