- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
java的井字棋.
《面向对象程序设计》
题 目: 单间的井字棋小游戏
班 级: 通信104
学 号: 2010014271
姓 名: 张建腾
完成时间: 2011.10.27
1)应用意义
简单的娱乐小游戏 可以两人对战 富有趣味性
2)功能描述
上方两个按钮 选择阵营 点击方格落下棋子 当一方有三个棋子连成一线则获胜
3)结构分析
public class zjt extends JFrame {
/*首先设置参数*/
int x = 0, y = 0;
…..
/*主类zjt(): 实现面板 运行游戏 判断输赢 */
public zjt() {
Container c = getContentPane();
C.setLayout(new FlowLayout());
congxin = new JButton(重新开始红队先下);
c.add(congxin);
huanse = new JButton(重新开始蓝队先下);
c.add(huanse); // 添加两个按钮
jl=newJLabel(); // 按钮下的标签
c.add(jl, BorderLayout.SOUTH); //标签的位置
addMouseListener(new MouseAdapter() { //鼠标监听事件
public void mousePressed(MouseEvent event) {
if (event.isAltDown()) {
repaint();
} //按钮点击后开始画图调用repaint();方法 绘制棋子
x = event.getPoint().x; y = event.getPoint().y; int a = mm(x, y); //获取鼠标的X Y坐标
if (yin) {jl.setForeground(Color.RED);
jl.setText(游戏已结束,请重新开始);
} //赢了以后出现提示
else {
if (s[a] == 1) {jl.setForeground(Color.RED);
jl.setText( 此位置有棋子,请另选位置重新下棋 );
} // 判断有棋子的地方不能再下 并给出提示
else {
fa = false; if (a == 1) a1 = 1; ……………………………..
} /*若无棋子 鼠标点击后设置参数变为1*/
s[a] = 1;
}
});
congxin.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
for (int i = 0; i s.length; i++) {
s[i] = 0;
jj[i] = 0;
}
……………………..
} /*点击按钮从新开始 并初始化 s[i] jj[i] 重新置零*/
/*画棋子 paint方法用于绘图 绘制出棋盘*/
public void paint(Graphics g) {
if (fa)
文档评论(0)