将 Java 组件添加到 Scala swing 面板

发布于 2024-10-03 02:52:44 字数 601 浏览 3 评论 0原文

嗯,我正在尝试让 Java3D 在 Scala 中工作。我注意到 Canvas3D 是一个 Component 派生类,而 scala.swing 类仅允许 Swing 组件,或者ScalaComponentJComponent。这是我的代码:

object HelloUniverse extends SimpleSwingApplication {
 def top = new MainFrame {
  title = "Java3D with Scala"

  contents = new BorderPanel {
   val config = SimpleUniverse.getPreferredConfiguration()
   val canvas = new Canvas3D(config)

   peer.add(canvas, "Center")
  }
 }
}

是的,通过 .peer 方法,我得到了底层的 JPanel。但是我该如何在其中添加重量级组件呢?

感谢您的帮助。

Well, I am trying to get Java3D working in Scala. I came to notice that the Canvas3D is a Component derived class, whereas the scala.swing classed only allow for, well, swing components, either ScalaComponent or JComponent. Here would be my code:

object HelloUniverse extends SimpleSwingApplication {
 def top = new MainFrame {
  title = "Java3D with Scala"

  contents = new BorderPanel {
   val config = SimpleUniverse.getPreferredConfiguration()
   val canvas = new Canvas3D(config)

   peer.add(canvas, "Center")
  }
 }
}

So yeah, with the .peer method I get the underlying JPanel. But how would I add a heavyweight component in there?

Thanks for the help.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

葬シ愛 2024-10-10 02:52:44

尝试使用 JCanvas3D。它基于 JPanel。
更多信息请访问 http: //download.java.net/media/java3d/javadoc/1.5.0/com/sun/j3d/exp/swing/JCanvas3D.html

满天都是小星星 2024-10-10 02:52:44

ScalaCanvas3D API 提供用于重量级和轻量级 Java 3D 渲染的 Scala Swing 组件。有关更多详细信息、示例程序和下载,请参阅“Java 3D 与 Scala”:http://www.interactivemesh.org/testspace/j3dmeetsscala.html

The ScalaCanvas3D API provides Scala Swing components for heavyweight and lightweigth Java 3D rendering. See 'Java 3D meets Scala' for more details, sample programs, and downloads : http://www.interactivemesh.org/testspace/j3dmeetsscala.html

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文