主界面
//1.召唤主界面
JFrame jFrame = new JFrame();
菜单制作
在菜单中有:JMenuBar、JMenu、JMenuItem三个角色。
JMenuBar:如上图中红色边框
JMenu:如上图蓝色边框
JMenuItem:如上图绿色字体处
其中JMenuBar是整体,一个界面中一般只有一个JMenuBar。
而JMenu是菜单中的选项,可以有多个。
JMenuItem是选项下面的条目,也可以有多个。
代码书写步骤
1,创建JMenuBar对象
2,创建JMenu对象
3,创建JMenuItem对象
4,把JMenuItem添加到JMenu中
5,把JMenu添加到JMenuBar中
6,把整个JMenuBar设置到整个界面中
添加图片
ImageIcon:描述图片的类,可以关联计算中任意位置的图片。
但是一般会把图片拷贝到当前项目中。
JLabel:用来管理图片,文字的类。
可以用来设置位置,宽高。
界面左上角的点可以看做是坐标的原点,横向的是X轴,纵向的是Y轴。
图片的位置其实取决于图片左上角的点,在坐标中的位置。
如果是(0,0)那么该图片会显示再屏幕的左上角。
步骤
1,取消整个界面的默认居中布局
2,创建ImageIcon对象,并制定图片位置。
3,创建JLabel对象,并把ImageIcon对象放到小括号中。
4,利用JLabel对象设置大小,宽高。
5,将JLabel对象添加到整个界面当中。
事件
事件源: 按钮 图片 窗体...
事件:某些操作
绑定监听:当事件源上发生了某个事件,则执行某段代码
常见的三种事件监听
键盘监听 KeyListener
鼠标监听 MouseListener
动作监听 ActionListener
动作监听
包含:
鼠标左键点击
空格
事件的三种实现方式
定义实现类实现接口
匿名内部类
本类实现接口
本类实现接口
public class MyJFrame extends JFrameimplements ActionListener{ //创建一个按钮对象 JButton jtb1 = new JButton("点我啊"); //创建一个按钮对象 JButton jtb2 = new JButton("再点我啊"); public MyJFrame(){ //设置界面的宽高 this.setSize(603, 680); //设置界面的标题 this.setTitle("拼图单机版 v1.0"); //设置界面置顶 this.setAlwaysOnTop(true); //设置界面居中 this.setLocationRelativeTo(null); //设置关闭模式 this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); //取消默认的居中放置,只有取消了才会按照XY轴的形式添加组件 this.setLayout(null); //给按钮设置位置和宽高 jtb1.setBounds(0,0,100,50); //给按钮添加事件 jtb1.addActionListener(this); //给按钮设置位置和宽高 jtb2.setBounds(100,0,100,50); jtb2.addActionListener(this); //那按钮添加到整个界面当中 this.getContentPane().add(jtb1); this.getContentPane().add(jtb2); //让整个界面显示出来 this.setVisible(true); } @Override public void actionPerformed(ActionEvent e) { //对当前的按钮进行判断 //获取当前被操作的那个按钮对象 Object source = e.getSource(); if(source == jtb1){ jtb1.setSize(200,200); }else if(source == jtb2){ Random r = new Random(); jtb2.setLocation(r.nextInt(500),r.nextInt(500)); } } }