一、完整游戏图形界面构建
二、组装菜单栏 JMenuBar (一个)
(一)菜单 JMenu (多个)
(二)菜单项 JMenuItem (更多个)
(三)案例
(1)菜单:游戏,设置,帮助
(2)菜单项:
1、游戏:开始游戏,重新开始,退出游戏
2、设置:动画:开 动画:关
3、帮助:关于
三、动作监听 ActionListenner
(一)菜单项不适用鼠标监听——不可选的菜单项也能被监听到
(二)监听的目标:除了窗口之外,能否产生动作——即形态变化 的组件
(三)操作流程
1、为不同的组件设置不同的指令(字符串)
2、自己写个类实现动作监听的接口
3、重写接口唯一的一个方法(根据不同的指令执行不同的代码——if语句)
4、在适当位置创建监听对象
5、在适当位置给某些组件安装同一个动作监听(只实例化了一个对象)
四、图形绘制
(一)前提:要有自定义的面板 (JPanel)
(二)面板必须重写父类绘制方法(paintComponent)(目前最好的方法)
1、重写此方法后,虚拟机 会独立开一条线程,不断调用此方法
2、注意:
禁止在此方法中写创建对象的代码
禁止在此方法中写修改数据的代码
(三)必备条件
1、第一行必须保留 调用父类的此方法,保证所有子容器显示正常 super.paintComponent(g);
2、方法最后最好要编写自动更新/主动更新的代码 repaint();
(四)绘制内容
(1)绘制图形——矩形
1、空心矩形
g.drawRect(x,y,width,height);
2、实心矩形
g.fillRect(x,y,width,height);
3、写字
g.FrawString(内容,x,y);
4、绘制线段
g.drawLine(x1,y1,x2,y2);
(2)绘制网格
1、确定宽度和高度
2、计算它们的公约数为每格大小
3、确定左上角顶点的其实位置
4、把数据存入共享数据类中
5、用for循环绘制横线和竖线
(3) 绘制图片
1、准备工作:找素材、P图
2、图片类型:jpg/png/gif
3、绘制方式
- 创建文件夹专门存放图片
- 加载图片对象
- 绘制 g.drawImage(图片对象, x , y , w , h , null );