java_高级_界面GUI编程

这篇博客介绍了Java图形用户界面(GUI)编程,包括使用java.awt和java.swing包创建窗体、面板、各种元素以及处理事件。讲解了JFrame、JPanel、JScrollPane、JLabel、JTextField、JPasswordField、JComboBox、JTextArea、JButton及其相关方法,还涵盖了弹窗提示和确认信息的实现。

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

java.awt包     --  比较旧的图形界面包
java.swing包   --  改良后的图形界面

窗体
   JFrame类表示窗体
this.setVisible(true);  -- 设置窗体是否可见  true-可见  false-不可见
this.setResizable(false); -- 设置窗体是否可变大小  true-可变  false-不可变
this.setSize(600, 400);  -- 设置窗体大小  单位:像素    与屏幕分辨率有关
this.setLocation(200, 150);  -- 设置窗体的起始位置  单位:像素
this.setTitle("测试窗口");  -- 设置窗体的左上角标题
this.setIconImage(Image);  --设置窗体的左上角图标


窗体的事件 -- 关闭事件
this.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});

   所有的内容不能直接放在窗体中,只有面板和菜单可以放在窗体中


面板
  Jpanel类表示标准的面板
jpanel.setLayout(null);  -- 设置任意布局
jpanel.add(lb1);    -- 向面板中添加一个元素
  JScrollPanel类表示带有滚动条的面板
jsp = new JScrollPane(jta1);  //将文本区域放入到滚动面板中,完成一个带有滚动条的文本区域


  承载元素的一种容器,将元素放在面板上,将面板赋予给窗体


  JFrame -> Jpanel ->  各种元素
                            ->  另一个面板


元素
  标签
JLabel 表示面板上的一处固定文字
   lb1 = new JLabel("这是一段固定文字");  -- 设置标签文字
   lb1.setText("xxxx");   --重新设置标签文字
   lb1.setLocation(20, 20); --设置标签的位置
   lb1.setSize(160, 25);   --设置标签的大小
jpanel.add(lb1);   -- 标签需要放入到某个面板中才能正常显示
  输入
文本框
 JTextField   使用方法参照标签的用法


密码框
 JPasswordField


下拉列表
 String[] items = {"辽宁","吉林","黑龙江","北京","上海","内蒙古"};
 jc1 = new JComboBox(items);  //参数是下拉列表的选项
文本区域
 JTextArea


 jta1.setEditable(false); --设置某元素为不可编辑


  按钮
JButton
按钮点击事件
jbtn1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
//此处添加事件代码
}
});


//1.获取文本框中文字
String a1 = jt1.getText();
//2.获取密码框中文字
char[] c = jp1.getPassword();
String a2 = new String(c);
//3.获取下拉列表中的选中项的文字
int i = jc1.getSelectedIndex();  --获取选中的序号  从0开始
String a3 = (String)jc1.getSelectedItem(); --获取选中的选项的文字
//4.获取文本区域中的文字
String a4 = jta1.getText();


//1.将文本框的内容设置为abc
jt1.setText("abc");
//2.将密码框的内容设置为123
jp1.setText("123");
//3.使得下拉列表中黑龙江被选中
jc1.setSelectedIndex(2);   --根据序号设置选中项
jc1.setSelectedItem("上海"); --根据值设置选中项
//4.将文本区域中的文字进行追加操作
jta1.append("哈哈\n");  --在文本区域的结尾追加一个“哈哈”后并换行
 弹窗
提示信息
JOptionPane.showMessageDialog(null, "您输入的内容有误", "哈哈哈", JOptionPane.PLAIN_MESSAGE);
第二个参数:提示文字
第三个参数:弹窗标题
第四个参数:弹窗提示图标
JOptionPane.ERROR_MESSAGE    错误  红X
JOptionPane.INFORMATION_MESSAGE   信息  蓝!
JOptionPane.WARNING_MESSAGE       警告  黄!
JOptionPane.QUESTION_MESSAGE      疑问  绿?
JOptionPane.PLAIN_MESSAGE         文本  无图标


确认信息 -- 重要操作(删除,备份,对数据有重大影响)前给予用户反悔的操作
JOptionPane.showConfirmDialog(null, "请确认要这么整吗?", "哈哈", JOptionPane.DEFAULT_OPTION);
第二个参数:提示文字
第三个参数:弹窗标题
第四个参数:提示种类
JOptionPane.DEFAULT_OPTION    默认方式      确认按钮
JOptionPane.YES_NO_OPTION      是否方式      是和否按钮
JOptionPane.YES_NO_CANCEL_OPTION  完整方式      是,否和取消按钮
JOptionPane.OK_CANCEL_OPTION      是否方式      确认和取消按钮
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值