java - JLabel 数组与 Graphics2D 绘画

标签 java arrays swing graphics jlabel

我必须为我的 CS 类(class)期末项目创建一个带有 GUI 的 connect 5 游戏。我在最后一个项目中使用 Graphics2D - 迷宫 - 使用 Graphics2D 是一场噩梦。 connect5 板最多为 20x20,面积为 400。我想知道创建 400 个 JLabel 数组来处理 GUI 对性能有何影响,因为很容易确定边界内的鼠标点击,获取数组,改变空间的颜色以及其他类似的操作,而使用 Graphics2D 进行相同的操作会困难得多。所以,我的总体问题是:创建一个包含那么多 JLabel 的数组是否是不可取的?如果是这样,我还有哪些其他选择?谢谢大家!

最佳答案

我认为 JLabel 方法是不可取的,我认为带有自定义绘画的组件会更可取,因为它看起来更容易一些。

如果你的类采用抽象格式而不绑定(bind)到 UI 或任何东西(即使在命令行上也可以播放,你可以在文本中输出板的表示),那么循环遍历代表棋盘的空间,并进行一小组绘图调用以绘制每个插槽(是否为空)。

如果您想引入动画,例如棋子掉落然后在碰到下面的棋子时会弹起一段时间,这似乎更好。

关于java - JLabel 数组与 Graphics2D 绘画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22944919/

相关文章:

java - JTable刷新不显示

java - 将 MouseEvents 从一个 Java 文件链接到另一个 Java 文件

java - 文件提供程序 : Failed to find configured root that contains

java - 当数据库中的行值为 NULL 时使用 ResultSet

ios - C 库中使用数组的 UnsafeMutablePointer

java - 在swing中拖动对象,MouseMotionListener是在对象中还是在JPanel中?

java - CXF:可从 wsdl2java 克隆类吗?

java - AWS ElasticSearch Service 版本 2.3 不适用于 Jest Client : java.net.SocketTimeoutException

php - 使用 PHP 从类似于 SQL LIKE '%search%' 的数组中过滤值

PHP - 是否可以对数字数组进行哈希处理?