【问题标题】:Can I embed an AWT Frame in a JFrame?我可以在 JFrame 中嵌入 AWT 框架吗?
【发布时间】:2011-09-08 00:34:13
【问题描述】:

我需要一个组件的 AWT Frames 功能,但我的主应用程序窗口是一个 JFrame。理想情况下,这将被合并到我的 gridbaglayout 中。

有没有办法通过窗口优先级设置来跟踪鼠标点击和“setLocationRealativeTo”?

更新:我已将媒体播放器添加到“画布”中以放弃 JInternalFrame 或其他任何内容,此组件将添加到我的主框架中。

我正在使用 GridBagLayout,并在我的主窗口的构造函数中添加我所有的按钮,但我需要在之后添加这个画布。有谁知道如何添加到 gridbaglayout 后构造函数?我试过“mainGUIclass.add(canvas,gridbagconstraints);”无济于事(因为我只是在构造函数中使用“add(randomcomponent, gridbagconstraints);”。

更新:我认为这里的根本问题对我来说已经改变了,我会再发布一个新问题,谢谢大家的帮助。

【问题讨论】:

  • 你在使用具体什么AWT相关类?你确定没有 Swing 替代品吗?

标签: java swing awt jframe


【解决方案1】:

为什么不直接使用JInternalFrame?如需更多信息,请参阅How to Use Internal Frames

【讨论】:

  • 我正在将媒体播放器嵌入其中,但我不相信 JInternalFrame 具有我正在寻找的功能,如果我发现没有,我会更新。
  • 看来我可以使用 JFrame 来完成相同的任务,但到目前为止,我一直无法让 JInternalFrame 出现在我的常规 JFrame 上...
【解决方案2】:

如果要添加“媒体播放器”,则将媒体播放器组件而不是框架添加到 Swing 面板。

见:Mixing Heavyweight and Lightweight Components

【讨论】:

    【解决方案3】:

    你可以做到,但小部件布局将是一个痛苦的**。

    更多信息http://java.sun.com/products/jfc/tsc/articles/mixing/

    【讨论】:

      猜你喜欢
      • 2011-07-27
      • 2012-04-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-19
      • 2013-01-22
      • 2014-12-04
      相关资源
      最近更新 更多