Java Swing的简单学习

计算机软件实习记录(第一周)——Java Swing的简单学习

Swing的认识

1)Swing是一个用于开发Java应用程序用户界面的开发工具包(GUI工具包),是JAVA基础类的一部分。
2)它包括了图形用户界面(GUI)器件,如:文本框,按钮,分隔窗格和表。

Swing 组件的学习

JFrame的学习

JFrame是⼀个容器,他是各个组件的载体。``
JFrame对象的创建JFrame jf = new JFrame("Hello!");

设置窗⼝的大小jf.setSize(400,300);设置窗口的位置jf.setLocation(550,450); 等价于jf.setBounds(550,450,400,300);
窗口位置设置于屏幕中央jf.setLocationRelativeTo(null);
窗口的关闭jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
显示和隐藏GUI组件jf.setVisible(true);

JDialog的简单操作

类似JFrame,但它是⼀个窗体弹出来的另外⼀个窗体
而且JDialog的关闭是使用DISPOSE_ON_CLOSE

        JDialog jd = new JDialog(jf,"hello");
        jd.setBounds(550,450,400,300);
        jd.setVisible(true);
        jd.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);

JPanel的简单操作

JPanel就是一种简单的面板

        JPanel jp = new JPanel(new FlowLayout());
        JButton jb1 = new JButton("X");
        JButton jb2 = new JButton("Y");
        jp.add(jb1);//往jp里面添加按钮
        jp.add(jb2);
        jf.add(jp);

绝对布局

绝对布局需要明确指定每一个组件的坐标和宽高,否则不显示。
绝对布局没有特定一个布局管理器类来表示,给容器的布局管理器设置为 null,就表示使用绝对布局,即通过设置组件的坐标和宽高来布置组件。
绝对布局的建立和文本组件的添加:

		JPanel panel = new JPanel(null);
        JTextField text = new JTextField(20);
        text.setLocation(20,10);
        text.setSize(245,50);
        panel.add(text);
        

箱式布局

使用 Box 提供的静态方法,可快速创建水平/垂直箱容器(Box),以及填充组件之间空隙的不可见组件。用水平箱和垂直箱的组合嵌套。`

		Box hBox01 = Box.createHorizontalBox();//水平箱容器的建立
        Box hBox02 = Box.createHorizontalBox();
        Box vBox = Box.createVerticalBox();//垂直箱容器的建立
        vBox.add(hBox01);
        vBox.add(hBox02);

组件

按钮组件

按钮的建立与添加

		JButton jb1 = new JButton("(");
        jb1.setBounds(20,130,50,50);//在绝对布局下定义按钮的位置和大小
        panel.add(jb1);
文本组件

文本的建立与添加

 JTextField text_01 = new JTextField(20);
        text_01.setBounds(20,70,245,50);
        panel.add(text_01);
文本域组件

构造函数:
JTextArea(int rows, int cols); // 指定⾏ 列
JTextArea(Document doc, String text, int rows, int cols); // 指定⽂本模型 +
默认⽂字 + ⻓ + 宽

JTextArea area = new JTextArea(12, 20);
        jf.add(area);
组建的尺寸和位置
		JButton jb1 = new JButton("(");
        jb1.setBounds(20,130,50,50);
//        jb1.setSize(50,50);
//        jb1.setLocation(20,130);
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值