【问题标题】:Adding a window to another window internally [closed]在内部将一个窗口添加到另一个窗口[关闭]
【发布时间】:2014-05-13 17:51:36
【问题描述】:

我想知道是否可以将一个窗口添加到另一个窗口?就像您可以添加该窗口一样,就像将内部框架添加到另一个窗口一样。我问这个的原因是因为我希望图像窗口(由 ImageJ 生成)显示在桌面框架或窗口中。另外,您将如何做这件事。提前致谢。

【问题讨论】:

  • 我已经看过了,我已经制作了很多内部框架,但是 imageJ 中的一个是一个窗口,我已经完成了“扩展 internalFrame”,但我不知道如何让它在桌面窗格。谢谢,但对此有什么想法吗?因为我尝试将窗口添加到我的桌面窗格,但我得到了非法参数异常。
  • herehere 已经提出了一个非常相似的问题。由于您专门针对 ImageJ 内部(ImageWindow 类),您最好在 ImageJ mailing list 上提问。
  • @JanEglinger 你知道一般情况下是否可以将窗口(内部)添加到另一个窗口吗?
  • @selena 你不能。您唯一能做的就是提取JFrame 的内容窗格并将其添加到JInternalFrame,但这可能会导致ImageJ 的各种问题。 ImageJ2 项目专门解决了这种缺乏关注点分离的问题。我们开始了概念验证MDI Swing UI,但不幸的是它还没有完成。理解代码并完成它将是巨大的努力。

标签: java user-interface imagej


【解决方案1】:

您可以调用JFramegetContentPane() 方法,或更一般地调用ContainergetComponents() 方法(例如,在java.awt.Framejava.awt.Dialog windows 的情况下),然后将其设置为JInternalFrame 的内容窗格。

【讨论】:

  • 所以我能够获得图像窗口的内容窗格,并且能够将其放在我的内部框架中,但是当您调整原始图像窗口的大小时,它会调整我的内部框架图像的大小。那么我将如何做到这一点,以便当我的内部框架窗口调整大小时它会调整图像大小?
  • ImageJ 在调整窗口大小时通常不会调整其图像大小。用普通的 ImageJ UI 试试看我的意思。因此,它在您的自定义 UI 中也不会如此。我认为您将不得不做一些 hacky 之类的事情,例如添加一个 WindowListener,以便在调整窗口大小时设置图像缩放。另见:imagej.1557.x6.nabble.com/…
  • 因为我知道 Image Window 类有一个函数 setLocationAndSize,如果框架发生变化,根据描述缩放图像。所以我认为这是图像能够相对于框架进行缩放的地方。但是我尝试使用该函数但它似乎不起作用我不知道我是否输入了错误的参数。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-07
  • 1970-01-01
  • 2013-11-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多