JAVA GUI期末程序设计项目 基于大佬五子棋底层逻辑

1 篇文章 0 订阅

西南财经大学天府学院

课程设计报告

面向对象程序课程设计任务书

课程名称

面向对象程序课程设计

课程代码

COM1304A

设计题目

基于GUI和文件读写的问卷调查设计与实现  

基于GUI和文件读写的信息管理系统设计与实现

或者自拟题目(包含界面和基本数据处理)

设计时间

2022年6月15日----2022年6月30日

课程设计题目自拟,需要与课程设计指导老师确定

需求分析:根据需求分析进行功能的梳理,形成相关文档

概要设计:根据需求完成功能分析主程序的流程,并划分各功能模块、完成各程序模块之间的层次关系设计

详细设计——界面设计:前台采用JSP或者GUI图形用户界面技术,要求采用JSP技术采用表单控件对页面进行合理布局,或者采用GUI的方式进行界面设计和布局,界面大方美观。

详细设计——数据保存设计:数据保存采用文件形式,或者数据库形式,数据库采用ACCESS或者SQLServer或者MYSQL或者ORACLE,根据需求分析进行数据保存进行设计

详细设计——业务开发:根据需求分析梳理业务功能,结合所学知识及技术进行业务的开发和实现,根据提取的功能部分,实现对数据库数据的读取或者文件数据读取(必须实现),可以在界面进行显示;实现数据的录入,界面数据填写后可以添加进数据库或者写入文件(必须实现);实现对数据的查询(选其一实现),并且完成相应的业务流程和业务逻辑。

提交方式:17周,上课时间以及课后时间,提交方式(1)电子版提交:以自己的姓名和学号命名文件夹(例如: 42108888_XX),文件夹里面包含三个子文件夹(java程序,数据文件,文档)分别将自己设计的代码整个工程放到“java程序文件”夹,将自己建的数据文件放到“数据文件”夹,将撰写的文档放入“文档”文件夹;然后压缩成压缩文件命名方式(42108888_XX.rar),答辩完成修改后,提交给每位任课老师。(2)打印版:如需打印,通知后将课程设计本报告双面打印提交

  

1 概述

1.1 需求分析描述 4

1.2 基本功能描述 5

2 课题分析 5

2.1 类的设计和实现 5

2.2 主要功能流程图 6

3 详细课程设计 9

3.1 程序主界面 9

3.2 程序功能原码 9

3.3 程序运行结果 42

4 课程设计总结 43

4.1 软件使用说明 44

4.2 课程设计心得 45

1 概述

   由于2016年围棋人机大战,李白石连输连输两场。中国传统棋类对弈文化在近几年受到很大的重视,也有越来越多的人想了解棋类对弈文化,为了传承和发扬棋类文化,推动棋类文化在智力对弈运动推广。所以我着重从中国五子棋方面进行期末项目的设计。因此这次设计的是中国五子棋游戏。首先该游戏系统是有特定的登陆界面,主要为用户。通过输入账号和密码登陆可直接跳转各自相应的界面。

游戏使用者可以通过对游戏的简单介绍,可以更加深入了解到五子棋的窗体【带标题和背景】棋盘【棋盘,棋子】图标【白子,黑子,开始,悔棋五子棋信息显示,通过鼠标点击之后就可保存在自己的棋盘里面进行五子棋白子和黑子储存,实现五子连珠即可赢得游戏,同时也有游戏玩家决定悔棋后点击悔棋的基础信息等,也可以选择是到悔棋还是重新开始。最后这些游戏玩家个人信息也会保存至专门的游戏数据进行储存。

1.1 需求分析描述

背景:现在中国人工智能越来越重视我们的传统棋类文化,也通过各大媒体的宣传让越来越多的人感受到了棋类对弈文化的魅力。所以在此背景下,想到要从一个方面为了传承和发扬棋类文化。而由于我对于棋类对弈方面很感兴趣,所以选择了这个方面。起初也只是想做一些棋类文化的简单GUI程序设计的基本信息的展示,后来就做成了可以供游戏玩家下棋的简单五子棋的游戏系统。

这里面包括了游戏登录界面、棋类文化界面。介绍棋类界面主要考虑到是对于各种棋类作相关信息的简介,其中也可以进行返回,跳转功能,以及五子棋游戏,黑子,白子,个人信息的统计。而对于五子棋游戏界面,首先是涉及到对于这些五子棋的简要介绍,才能让游戏玩家了解到五子棋文化起源、五子棋对弈玩法,才能决定要不要进行玩游戏,然后也有进行自己信息统计功能,最后可点击开始功能,同时黑子、白子也是保存至棋盘,也有用户有退出系统的功能。所以整体来看比较方便,满足了游戏玩家了解棋类文化和玩游戏的需求。

1.2 基本功能描述

  1. 登陆: 先通过选择是游戏玩家进行输入账号和密码,如果账号和密码任一不对或者使用人员选择错误就无法进行登陆。同时登陆界面也有退出按钮,可直接退出程序。在点击登陆按钮成功后,若点击的游戏玩家会直接跳转到棋类简介界面。
  2. 棋类简介界面:棋类简介界面设有各类棋类的照片
  3. 五子棋界面。五子棋简介界面主要有五子棋介绍

2 课题分析

2.1 类的设计和实现

   因为整个设计是后来加入了游戏,所以设了两个父类。第一个父类是登录和棋类简介,也就是游戏玩家登录系统的。其子类是登录,简介,棋类界面,五子琪介绍。成员变量有棋类,时间,发源地,图片,视频,返回变量。这些都是子类直接继承父类的。子类的变量有特色。他们都有用到toString方法,main函数,监听,对于每个变量也构造了多个函数。另一个父类用户(主要是用户的五子棋游戏Text类),所以其子类有游戏主类1和游戏信息2两个。父类的成员变量有棋盘位置,黑子,白子,特点,棋子是否重复,棋子坐标。这些子类直接继承,而子类的成员变量有棋子连珠。用了重载,无参构造函数覆写paint方法,绘制界面等。

2.2 主要功能流程图

3 详细课程设计

3.1 程序主界面

     登陆: 先通过选择是游戏玩家进行输入账号和密码,如果账号和密码任一不对或者使用人员选择错误就无法进行登陆。同时登陆界面也有退出按钮,可直接退出程序。在点击登陆按钮成功后,若点击的游戏玩家会直接跳转到棋类简介界面。

  1. 棋类简介界面:棋类简介界面设有各类棋类的照片,种类,视频,起源地,特点,以及下棋法进行后台棋类文化信息展示。其中种类,照片,发源时期是直接输出,棋类种类是单一选择,而在点击各类棋类时,棋类图片和视频会随之变化。在此之后可点击开始按钮,就可保存至特定的五子棋界面中。在所有都选在完毕之后就可点击返回按钮,直接退出游戏系统。

3.2 程序功能原码

登录界面javaYU

package javaYU;

import java.awt.BorderLayout;
import java.awt.EventQueue;
import java.awt.Image;

import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JButton;
import javax.swing.JTextField;


public class denglu extends JFrame {

	private JPanel contentPane;
	Image im;
	private JTextField textField;
	private JTextField textField_1;

	/**
	 * Launch the application.
	 */
	public static void main(String[] args) {
		EventQueue.invokeLater(new Runnable() {
			public void run() {
				try {
					
					denglu frame = new denglu();
					frame.setVisible(true);
					
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		});
	}

	/**
	 * Create the frame.
	 */
	public denglu() {
		super("甲壳虫五子棋");	
		// setBounds(500, 150, 960, 666);
        setBounds(0,0, 1491,995);//设置窗口出现的位置		
			
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设置用户在此窗体上发起 "close" 时默认执行的操作。
		contentPane = new JPanel(); //指定容器
		setContentPane(contentPane);//设置 contentPane 属性
		contentPane.setOpaque(false);
		contentPane.setLayout(null);
		
	
		JButton btnNewButton_1 = new JButton("密码");
		btnNewButton_1.setBounds(517, 465, 153, 37);
		contentPane.add(btnNewButton_1);
		
		textField = new JTextField();
		textField.setBounds(749, 387, 126, 35);
		contentPane.add(textField);
		textField.setColumns(10);
		
		textField_1 = new JTextField();
		textField_1.setBounds(749, 466, 126, 35);
		contentPane.add(textField_1);
		textField_1.setColumns(10);
		
		JButton btnNewButton_2 = new JButton("\u767B\u5F55");
		btnNewButton_2.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				String s1=textField.getText();
				String s2=textField_1.getText();
				if (s1.equals("")) {
					JOptionPane.showMessageDialog(null, "输入不能为空");//对按了注册按钮做出的回应
				}
				if(s1.equals("余嘉鸿") && s2.equals("42104521")){
					JOptionPane.showMessageDialog(null, "登录成功");
					
					DeepCleana frame = new DeepCleana();
					
					
				}else{
					JOptionPane.showMessageDialog(null, "登陆失败");
					//System.out.println("登录失败:输入的用户名或密码不正确!");
				}
				
				//关闭流
				
				
			}
			
		});
		btnNewButton_2.setBounds(636, 547, 153, 37);
		contentPane.add(btnNewButton_2);
		init();
	}
	public void init() {
		/*
		 * 设置窗口图标
		 */
		ImageIcon ig = new ImageIcon("C:\\Users\\余先生\\Desktop\\新建文件夹\\图片1.png");//这里放上你要设置图标图片
		im = ig.getImage();
		setIconImage(im);
		
		/*
		 * 设置窗口背景图片
		 */
		ImageIcon img = new ImageIcon("C:\\Users\\余先生\\Desktop\\新建文件夹\\QQ图片20220627064649.png");//要设置的背景图片
		
		this.getLayeredPane().add(imgLabel, new Integer(Integer.MIN_VALUE));//将背景标签添加到jfram的LayeredPane面板里。
		imgLabel.setBounds(0, 0, img.getIconWidth(), img.getIconHeight());	
	}
}

(@所以友友 )需要源码 联系博主

学长是真心想帮到学弟学妹们

专业的知识和产品值得这份尊重,让做这些事情的人得到收益,会有更多的人愿意参与进来。而且通过学弟学妹们的选择,优胜略汰。

 棋类种类介绍界面

3.3 程序运行结果

登陆界面,当账号,密码,登陆信息正确后,点击登陆会跳出提示,并进入相应界面。

 中间代码 和图片 保证你在期末答辩中获得高分 (博主期末满分100分过的) 过过过)

五子棋游戏界面

  1. 五子棋界面。五子棋简介界面主要有五子棋介绍,比如时间,传播,起源地,特点,图片,开始游戏。以及了解棋类,比如绘画构想图,棋类,途径玩法,棋盘。最后可点击开始功能,同时黑子、白子也是保存至棋盘,也有用户有退出系统和悔棋的功能。所以整体来看比较方便,满足了游戏玩家了解棋类文化和玩游戏的需求。(每个按钮点击的时候都会跳出提醒信息)

 中间代码 和图片 保证你在期末答辩中获得高分 最少老师评分是A (博主期末满分100分过的) 过过过)

如果需要程序源码(加Q :488461679  V.13541657135 请你们加注明来源:GUI项目   熬夜的成果 同志们支持一下吧  即可获得源码)

若有益支持 时 请备注好信息(也可帮忙代做期末JAVA设计  及其划算)

致谢:JAVA启蒙导师范老师

      JAVA班级大佬同学和师姐(互相学习)

      度娘(百度一下解决80%问题)

      感谢奋进路上滴自己(越王楼、涪江畔、园艺山、天府院、相遇缘)

欢迎关注@四阿哥108

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
根据引用和引用的内容,Java GUI程序设计是使用Java语言和相应的类库来创建图形用户界面的过程。这个过程可以通过学习和掌握图形用户界面程序的设计开发能力来完成。Java GUI程序设计可以应用于计算机科学与技术、计算机软件、软件工程等专业的课程教材,也适合非计算机专业但具备Java基础的学生以及Java GUI程序设计爱好者自学。 在Java GUI程序设计中,可以使用最新的Eclipse开发环境和Visual Editor插件作为可视化开发工具。通过逐步设计实例,详细讲解窗口、基本组件、容器、布局管理、事件处理、菜单、工具栏、表格和树等组件的可视化创建和属性设置,以及高级组件如JFace对话框、查看器、编辑器、排序器和过滤器的设计与应用。同时,还会介绍Java GUI程序的设计思路、可视化快速开发方法和步骤,以及必要的相关知识、原理和开发工具的基本使用方法和技巧。 综上所述,Java GUI项目设计是通过学习和应用Java语言和相应的类库来创建图形用户界面的过程,可以使用Eclipse和Visual Editor插件作为可视化开发工具,同时掌握窗口、组件、布局管理、事件处理等方面的知识和技巧。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [可视化Java GUI程序设计 基于Eclipse](https://blog.csdn.net/weixin_32461163/article/details/114348594)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [JAVA GUI设计](https://blog.csdn.net/AnalogElectronic/article/details/88805111)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值