我是一位经验有限的新程序员,希望能够扩展它。这是我在校外尝试的第一个项目,所以我的资源很波动,因为我根本不知道我需要知道什么。但是,对于使用Java的基本GUI,我有一些小的基础。自我项目:使用GUI创建国际象棋游戏
我想创建一个象棋游戏,稍后实现一个AI。但是,现在我只是在构建游戏本身。现在,我想要一个简单的GUI框架,它不必看起来漂亮或复杂。只需显示棋盘,棋子在哪里,点击棋子,它会突出显示你可以走到哪里,然后点击广场,瞧,移动完成。
这是我在GUI界面设计中的主要问题。它是否分开逻辑部分完成?换句话说,如果我创建了一个Piece,我是否需要一个.jpg或其他东西,或者我可以只有一个单独的类,如果在这个正方形中有一个棋子,在这些坐标中显示一个棋子图片。我需要知道什么来构建GUI?我主要使用谷歌浏览,但一开始就会被赞赏,同时知道继续在棋盘上工作,同时以不同的速度进行GUI部分的工作是可以的。
非常感谢,如果我提出的任何问题都是随时可以找到的信息,我很抱歉。我可能已经触及了它,但没有意识到它对我想做的事情的重要性。再次
谢谢:)
我只是有兴趣更新此。我有一个更好的形式,我将要做的事情,并在我的脑海中有这种结构,并在纸上翻译。现在,为简单起见,所有的东西都只是在Java中。
无论如何,抱歉,很长的职位。没有人需要阅读。 :)
我会尝试使用MVC格式,尽管它仍然可能会让我稍微困惑。
模型 - 我将创建一块板[8] [8]。 Piece将是一个抽象类,由我现在调用的坐标和抽象方法canMove(x,y)组成。我原本也有动作(x,y),但我意识到这些作品不会做动作。因此,我坚持使用canMove方法,让控制器看到Piece是否确实可以做到这一点。
控制器 - 在这里我将创建电路板并设置所有部分。我认为这将是最大的一个阶级,因为它几乎可以控制一切。
查看 - 这基本上是GUI。
这是我认为控制器/视图协调应该如何工作的。
控制器中会有一个变量叫手。当我第一次点击一个作品时,它会检查它是否是黑/白,这是作品本身的一个参数。如果它是正确的颜色,它将被分配到手。那么它会检查双数组中的每个方块。如果canMove()为true,则在视图中突出显示该方块。然后第二次点击将检查canMove()。如果属实,请检查它是否被一块相同颜色占据,如果不是,则移动到那里。如果是假的,什么都不是如果你点击手,手就变空了。对我而言,问题将是视图如何与控制器交互。稍后会介绍。
在每一个动作结束时,检查每件作品的canMove()以查看国王是否在其中。如果是这样,请检查。对于将军,我想我会有一个标记国王周围广场的整体方法,看看他们是否都有标记,包括他所在的那个。
所以我有几件事我也意识到我没有解释我必须弄清楚。典当捕捉和典当运动将非常具体。王车易位。 CanMove申请时,一定要有一些碎片的阻碍。
建筑视图将是一种痛苦,因为我的班级中没有人教过我任何关于它的事情。我想,最后会得到它。 Idk我会如何测试而不是观看,尽管可能不会持续。
看看Oracle的Swing教程。 – 2012-08-02 22:38:57