JAVASE学习笔记:第十章 SWing常用控件类(一)

本文详细介绍了如何使用Java Swing创建一个简单的窗体,包括使用JFrame、JLabel、JTextField、JButton、JRadioButton、JCheckBox等组件进行布局与功能实现,并讨论了与AWT的区别与优势。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

AWT(abstract windows toolkit)    抽象窗体工具包,所以java.awt下
缺点:在AWT中存在缺少剪贴板、缺少打印支持等缺陷,甚至没有弹出式菜单和滚动窗口等,AWT依赖于特定的系统
Swing显示性能比AWT要好,而且是纯JAVA来实现,具有跨平台性,因此,实用性比AWT要强,但有些基础功能还需要借助AWT实现,所以不能完全取代AWT
Swing所在javax.swing包


1、JFrame  窗体 
         JFrame jf=new JFrame(); //初始化不可见的窗口
  jf.setSize(200, 200);// 设置窗体大小
  jf.setVisible(true);  //设置窗体可铜陵
  jf.setLocation(100, 50);  //表示X轴100  Y50
  jf.setTitle("第一个窗体");//设置标题
  //获取默认的工具箱
  Toolkit t=Toolkit.getDefaultToolkit();
  Image i= t.getImage("c:\\1.jpg"); //设置图像路径
  jf.setIconImage(i);//设置窗体图标
  
  //设置默认关闭方式,//0表示DO_NOTHING_ON_CLOSE    1表示HIDE_ON_CLOSE  2表示DISPOSE_ON_CLOSE
  jf.setDefaultCloseOperation(3);
  int wi=t.getScreenSize().width;//获取屏幕宽度
  int he=t.getScreenSize().height;//获取屏幕高度
  jf.setLocation((wi-200)/2,(he-200)/2); //设置窗体居中
  jf.setResizable(false);//禁用窗体改变大小
窗体一般分三层:跟面板,中间面板,内容面板,因jFrame窗体默认在内容面板有个麻将布局,必须设置layout布局为null,才能正常显示控件位置
2、 JLabel  标签页,存放图片和文本
    URL url=this.getclass().getclassloader().getresource("\images\1.jpg"); //设定URL路径
        /*
  * 初始化标签
  */
 public void addLab(){
  c.setLayout(null);//清除布局
  
  Font f=new Font("宋体", Font.PLAIN, 14);
  //添加用户名标签
  JLabel labUser=new JLabel();
  labUser.setText("用户名:");
  labUser.setSize(60, 20);//设置标签尺寸
  labUser.setLocation(40, 90);//设置标签位置
  labUser.setForeground(Color.red);//设置前颜色
  labUser.setFont(f);//设置字体
  c.add(labUser);
  //添加密码标签
  JLabel labPwd=new JLabel();
  labPwd.setText("密 码:");
  labPwd.setSize(60, 20);
  labPwd.setLocation(40,130);
  labPwd.setForeground(Color.red);
  labPwd.setFont(f);
  c.add(labPwd); 
 }

3、JTextField  文本框
        /*
  * 初始化文本框
  */
 public void addText(){
  c.setLayout(null);
  JTextField jtUser=new JTextField(30);
  jtUser.setSize(130, 20);
  jtUser.setLocation(100, 90);
  c.add(jtUser);
  JTextField jtPWD=new JTextField(30);
  jtPWD.setSize(130,20);
  jtPWD.setLocation(100, 130);
  c.add(jtPWD);
  
 }

4、JButton  按钮 
         /*
  * 初始化按钮
  */   
 public void addBtn(){
  JButton jbEnter=new JButton("确定");
  jbEnter.setSize(80, 30);
  jbEnter.setLocation(80, 180);
  c.add(jbEnter);
  c.setLayout(null);
  
  JButton jbCanel=new JButton("取消");
  jbCanel.setSize(80, 30);
  jbCanel.setLocation(200, 180);
  c.add(jbCanel);
  c.setLayout(null);
 }
5、JRadioButton   单选框和ButtonGroup  一块用
    /*
  * 初始化单选框
  */
 public void addJRadion(){
  JRadioButton jrb=new JRadioButton("女",true);
  jrb.setSize(40, 20);
  jrb.setLocation(10,10);
  c.add(jrb);
  JRadioButton jrb1=new JRadioButton("男");
  jrb1.setSize(40, 20);
  jrb1.setLocation(50,10);
  c.add(jrb1);
  c.setLayout(null);
  ButtonGroup bg=new ButtonGroup();//将单选框放到按钮组
  bg.add(jrb);
  bg.add(jrb1);
 }

6、JCheckBox      复选框
        /*
  * 初始化复选框
  */
 public void addCheckbox(){
  JCheckBox jcb=new JCheckBox("英雄联盟");
  jcb.setSize(80,20);
  jcb.setLocation(100, 10);
  c.add(jcb);
  c.setLayout(null);
 }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值