------------只要够努力,人生最坏的结局不过是大器晚成!!!

3程序设计开发

3.1程序设计思路

3.1.1.界面设计

首先设计一个主面板用来装后面需要的一些控件,所以建立了一个MainFrame继承JFrame, 并设置设置默认窗口大小和位置(位置获取了屏幕大小,尽量设置再来屏幕中间)、程序图标和程序名、以及游戏帮助的菜单,后面在向其中加入组件,各组件采用网格布局。如图一所示:

 

 

 

图一:界面展示

3.1.2.算法设计      

       由于本游戏设计的思路是让用户输入一个数字,然后判断数字是否合法和正确,并给出提示。故算法设计就可以结合的用户需求来即可。

       算法设计:从输入框中获取数据,并转为数字类型,判断是否为四位数,不是则弹窗提示框,告诉用户输入不合法,并清空输入框,让用户再次输入,并且本次次数不记入猜数次数;当用户猜的数字合法时,调用函数,判断输入的数字是否和目标值相等,目标值是在游戏开始时随机的一个四位数,如果相等,则弹窗提示框告诉用户猜对了,并在提示框上显示用户一共使用的次数(最后一次也记入总次数);如果没有才对,则将该数字和目标值进行比较,如果大了,则设置提示文字为“你猜的数字大了”,如果猜小了,则设置提示文字为“你猜的数字小了”,并且同时将你刚刚输入的数字放在提示文字之后。

3.2 用例图

用户用例图如下,包括了用户可以操作的功能。

 

 

 

用户用例图

3.3 程序的设计

     根据界面设计和算法设计的思路可以很轻松的编写代码,只要依次实现即可。首先就是设计界面,设计一个类(MainFrame)让其继承JFrame,向其中添加三个组件:面板、菜单、下方的组件,并使用默认布局,但是需要指定各个的位置。

    关于功能方面的设计,建立一个类(Guess),设置四个静态变量: aimNum(游戏开始时设置的目标值)、guessNum(每次用户输入到输入框中过的猜数)、outputResult(输出到面板上的猜数记录和提示)、countSteps(记录用户总的猜数次数)。在Guess()构造函数中初始化他们的默认值,其中aimNum目标值设置的是一个四位的随机数。编写一个成员函数processInput(),用来判断是否才对了,如果猜对了弹出提示框,提示用户猜对了,并展示猜对时用了多少次。如果没有猜对,则只是将猜的次数加一,并调用output()函数,其中output()函数则用来提示用户猜的数字和目标值的大小比较结果,如果大了,则提示用户“猜大了”,如果小了,则提示用户“猜小了”,并提示语输出到游戏中间的面板上,同时清空输入框,等待用户的下一输入,继续猜数。

3.4 程序的运行

运行游戏,界面如下:

 

 

 

游戏运行界面

3.5 程序测试

1、开始游戏,并输入一个非四位数,提示错误,并清空输入框:

 

 

 

输入不合法图

2、输入一个非目标值,提示猜大了或者小了,并显示在主界面,如下图:

 

 

 

未猜对图

3、如果猜对了数字,会弹出提示框,如下图:

 

 

 

猜对了

4、退出游戏,如下图:

 

 

 

退出确定图

原代码:

https://download.csdn.net/download/qq_39451578/12443577

 

posted on 2020-05-21 16:58  ystraw  阅读(1507)  评论(0编辑  收藏  举报

不经一番切孤寒,怎得梅花扑鼻香