【问题标题】:Java Applet to Multi Panel ApplicationJava Applet 到多面板应用程序
【发布时间】:2012-02-04 23:15:02
【问题描述】:

我制作了一个 Java 游戏,但它是基于小程序的。我想把它转换成一个独立的应用程序。不幸的是,我对 swing/java 应用程序的了解为 0,所以我不确定从哪里开始以及如何获得我想要的。

我的主要问题是游戏画面基本上分为两部分。 “游戏屏幕”和我所说的“仪表板”。如果您可以想象帝国时代、星际争霸或任何其他 RTS 类型的游戏,那就是布局。

所以我想要的是屏幕有自己的图形面板(所有的绘图/动画都是用图形和图像类完成的),其中也有滚动条,这样游戏的大小就不受限制到你的屏幕大小。我希望仪表板是它自己独立的面板,它也使用图形方法。但最终,两个面板都在同一个窗口中。

这有可能吗?

PS:请随时索取游戏代码或截图

编辑:如果可能的话,我应该怎么做?

【问题讨论】:

  • “这到底有没有可能?” 小程序中任何可能的 GUI 布局在桌面应用程序中都是可能的。所以回答你的一个问题是.. 是的。我应该输入这个作为答案,还是你想问一个更具体的问题?
  • 更具体的问题是我将如何去做这件事?梅森似乎给出了一个很好的答案,但我很想看看你是否会给出不同的答案。

标签: java applet window panel


【解决方案1】:

简单的 Swing 应用程序通常基于 JFrame 类。据我了解,整个游戏都是渲染的,而不是在 UI 中使用标准组件。然后,大致而言,JAppletJFrame 类之间几乎没有区别。如果您使用特定的 JApplet 方法来加载资源或类似的东西,几乎所有这些方法都可以轻松替换为对应物。

您可以创建一个组件类(通过扩展JComponent)并使用它来渲染主游戏窗口。并创建另一个来呈现仪表板。然后在JFrame 上使用BorderLayout 作为布局管理器,将主窗口放在中心,将仪表板放在任意边缘。

Oracle 网站上有非常清晰的 HowTo 说明: How to Make FramesHow to Use Panels

【讨论】:

    【解决方案2】:

    我认为 Mersenne 的回答很好地涵盖了它,尽管我会考虑在 BufferedImage 中渲染游戏并将其添加到(ImageIcon 中)JLabel 中的 JScrollPane

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-26
      • 2012-09-09
      相关资源
      最近更新 更多