阶段项目
拼图小游戏
JFrame
JMenuBar
JMenu
JMenuItem
用add方法添加到不同的对象中
添加图片
先创建一个图片ImageIcon的对象,写入图片的路径
再创建JLabel管理容器对象,把图片放到这个容器中,再把容器添加到界面
界面坐标位置
改变图像位置,直接在初始化图像位置时将管理容器添加到界面
this.add(jLabel1); //这样子是不行的,图像还是在居中位置
因为,JFrame里有个隐藏的容器,通过getcontentpane()获取,当创建JFrame对象时这个容器就会出现了,不需要我们自己创建,所以说添加图片其实是添加到这个容器里
要在初始化JFrame里设置setlayout(null)
然后在初始化图像里getcontentpane().add()
再用for循环添加所有图片
打乱图片
一维数组放到二位数组中
1.遍历一维数组
2.遍历二维数组
事件
动作监听:只能监听键盘的空格,鼠标的点击
用到了匿名内部类
JButton 创建按钮对象(在成员位置)
给按钮添加事件
最后不要忘了把按钮加到界面
或者implement ActionListener 接口
重写里面的抽象方法,写出点击按钮后所执行的代码
getSource:获得当前操作的按钮对象
鼠标监听机制
Implement mouselistener ,需要重写5个方法
键盘监听机制
Getkeycode()得到键盘上按键的编号
发现问题:同时添加其他监听器,键盘监听机制会有冲突,无法监听键盘了
添加背景图片
先添加的图片会在下面
所以背景图要放在最后添加
添加边框 setborder
清空所有图片
this.getContentPane().removeAll();
刷新界面
this.getContentPane().repaint();
路径简化
绝对路径
相对路径
查看完整图片
菜单功能
给菜单选项下的条目绑定事件
addActionListener
创建弹框
JDialog jDialog = new JDialog();
嵌套多级菜单