java swing(GUI图形化界面)基础教程2-添加组件

书接上回,这是我们已经写好的代码:

    public static void main(String[] args) {
        //这是一个窗口类
        JFrame frame=new JFrame();

        //设置窗口位置与大小
        frame.setBounds(100,100,500,500);

        //用户关闭时会关闭所有窗口
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        
        //设置这窗口可见,记得尽量要把这一句放在最后面
        frame.setVisible(true);
    }

但是,这个窗口现在里面什么东西都没有.那我们该怎么添加呢?

我做一个比喻,现在我们的这个窗口相当于一个画板,而我们要画画,首先要在这个画板上面放上一张纸,然后再开始画.(当然,你也可以不放这一张纸,直接画在画板上面,不过,我个人并不建议这样做.)

所以,我们要有一张 "纸" ,也就是JPanel 对象,把他添加到窗口里面去

        //创建一个面板,并且将这个面板添加到窗口里面去
        JPanel panel=new JPanel();
        frame.add(panel);

我们运行一下,发现和原来的窗口相比没有什么变化,嗯,当然,因为我们还没有往这一张"纸"里面画东西.

好,想一想平常一个窗口中一定会有什么东西? 对,没错,是按钮.

按钮的英文单词是什么? 是Button,因此我们就可以大概猜测到怎么添加按钮了

        //创建一个按钮,并且将这个按钮添加到面板上面
        JButton button=new JButton();
        //设置按钮的文字内容
        button.setText("按钮");
        //添加按钮到面板
        panel.add(button);

运行之后长这样:

这时有人便猜测,能不能给这个按钮设置位置和大小呢?

好,我们来试一下

        //创建一个按钮,并且将这个按钮添加到面板上面
        JButton button=new JButton();
        //设置按钮的文字内容
        button.setText("按钮");
        //设置按钮的位置大小
        button.setBounds(100,100,100,100);
        //添加按钮到面板
        panel.add(button);

运行后发现....这不行啊,和原来的一样.

这就涉及到布局管理了,简单来说,就是JPanel对本身的内容有默认的方式,我们需要将这一种方式取消掉,我们设置的按钮位置大小才有效.即:

panel.setLayout(null);

现在的整体代码长这样:

    public static void main(String[] args) {
        //这是一个窗口类
        JFrame frame=new JFrame();

        //设置窗口位置与大小
        frame.setBounds(100,100,500,500);

        //用户关闭时会关闭所有窗口
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        //创建一个面板,并且将这个面板添加到窗口里面去
        JPanel panel=new JPanel();
        frame.add(panel);

        //创建一个按钮,并且将这个按钮添加到面板上面
        JButton button=new JButton();
        //设置按钮的文字内容
        button.setText("按钮");
        //取消默认的布局管理
        panel.setLayout(null);
        //设置按钮的位置大小
        button.setBounds(100,100,100,100);
        //添加按钮到面板
        panel.add(button);

        //设置这窗口可见,记得尽量要把这一句放在最后面
        frame.setVisible(true);
    }

 运行后发现效果改变了:

好,现在我们这个窗口里面已经有一个按钮了,但是这个按钮点了没有反应,所以我们要...

下一篇文章见

 

 

 

  • 5
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

尽辰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值