实验目的:

1.掌握Swing常用的组件的使用;

2.掌握程序界面开发的步骤;

3.掌握事件监听器的使用。

实验内容:

如图1界面,在文本框中输入姓名,选择性别(单选)、爱好(可多选)、未来职业(下拉框),单击“确定”按钮,弹出消息提示框,如图2,单击“退出”按钮结束运行。

(界面代码已给出,请阅读理解,补充事件监听代码)

 

信息输入界面

需要解决的问题:

  1. 两个按钮绑定同一个监听器,如何判断用户单击了哪个按钮?

2)如何判断单选按钮、复选框的选中状态及标题文本的获取?

 3)如何退出Java程序?

源代码:

//SelectFrame.java文件:
import javax.swing.*;
import javax.swing.event.AncestorListener;
import java.awt.*;
import java.awt.event.*;
public class SelectFrame extends JFrame implements ActionListener  { //实现动作监听器窗体private static final long serialVersionUID = 1L;private JLabel labName = new JLabel("姓名:");private JTextField tf = new JTextField(10);                         //文本框private JLabel sex = new JLabel("性别:");private JRadioButton male= new JRadioButton("男");private JRadioButton female = new JRadioButton("女");  private JLabel labLove = new JLabel("爱好:");private JCheckBox cbMusic =  new JCheckBox("音乐"); private JCheckBox cbSport =  new JCheckBox("运动"); private JCheckBox cbWeb =  new JCheckBox("上网");private JLabel labDo = new JLabel("未来职业:");private String[] labs = {"软件工程师","网络工程师","数据库工程师","其它"};private JComboBox labCombo = new JComboBox(labs);private JButton butOk = new JButton("确定");private JButton butExit = new JButton("退出"); private ButtonGroup bg = new ButtonGroup(); //单选按钮组   private JPanel pan1 = new JPanel();     //创建面板1private JPanel pan2 = new JPanel();private JPanel pan3 = new JPanel();private JPanel pan4 = new JPanel();private JPanel pan5 = new JPanel();public SelectFrame() throws ClassNotFoundException, InstantiationException, IllegalAccessException, UnsupportedLookAndFeelException{UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());this.setLayout(new GridLayout(5,1));this.setTitle("兴趣爱好选择");this.setSize(500, 300);this.setLocationRelativeTo(null);//面板1加入姓名文本框pan1.add(labName);pan1.add(tf);//面板2加入性别单选组pan2.add(sex);pan2.add(male);pan2.add(female);bg.add(male);bg.add(female);//面板3 加入爱好复选框pan3.add(labLove);pan3.add(cbMusic);pan3.add(cbSport);pan3.add(cbWeb);//面板4 加入未来职业下拉框pan4.add(labDo);pan4.add(labCombo); //面板5 加入两个按钮pan5.add(butOk);pan5.add(butExit);//把5个中间层窗口添加到主界面this.add(pan1);this.add(pan2);this.add(pan3);this.add(pan4);this.add(pan5);butOk.addActionListener(this);butExit.addActionListener(this);}//完成实现 ActionListener接口,并完成注册监听器.....//***************begin***************** public void actionPerformed(ActionEvent e) {if(e.getSource()==butOk) {StringBuffer sb=new StringBuffer();sb.append("我是"+ tf.getText());sb.append("\n性别:");if(male.isSelected()){sb.append(male.getText() +" ");}if(female.isSelected()){sb.append(female.getText()+" ");}sb.append("\n爱好:");if(cbMusic.isSelected()){sb.append(cbMusic.getText() + " ");}if(cbSport.isSelected()){sb.append(cbSport.getText()+" ");}if(cbWeb.isSelected()){sb.append(cbWeb.getText()+" ");}sb.append("\n未来职业: ");if(true){sb.append(labCombo.getSelectedItem()+" ");}JOptionPane.showMessageDialog(this, sb);}if(e.getSource()==butExit){System.exit(0);}}   //***************end*****************   public static void main(String[] args) throws ClassNotFoundException, InstantiationException, IllegalAccessException, UnsupportedLookAndFeelException {SelectFrame sf= new SelectFrame();sf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);sf.setVisible(true);}
}

兴趣爱好选择程序java+Swing界面相关推荐

  1. 基于Java Swing界面编程教学

    基于Java Swing界面编程 Swing是Java基础类的一部分,是一个为Java设计的GUI工具包. Swing包含了诸多图形用户界面(GUI)器件,提供了许多比awt更好的屏幕显示元素. 本教 ...

  2. Java swing 界面开发 - 登录界面- 2021-11-10

    Java swing 界面开发 - 登录界面 界面开发 包 包的概念 开发包 Java界面开发包 登录界面开发步骤 最简单的窗体 优化窗体内容 注意 优化响应内容 界面开发 包 包的概念 包的加入让类 ...

  3. java怎么设计好看的界面,javaswing酷炫界面 java swing界面设计

    java swing怎样开发出漂亮的界面 Swing 支持切换界面风格啊 默认的是Metal风格,确实不好看 你可以切换为Windows风格,看起来和Windows上的程序就是一样滴了,还可以切换为苹 ...

  4. java swing界面工具_Java GUI swing 工具包使用总结

    前言 最近用 swing 写了一个GUI图片接入的工具, 方便用于将图片数据通过接口推送到 web 项目中 做界面有点像写原生的 CSS 技术储备 java 基础知识, 面向对象封装, 继承, 接口, ...

  5. java gui 日历_Java实现简单日历小程序 Java图形界面小日历开发

    今天给大家介绍一下如何用Java swing开发一款简单的小日历,下面我们来看代码: 首先创建一个CalendarBean类,用于基本的日期计算: package other1; import jav ...

  6. Java Swing界面设计UI(全)

    原文链接: http://blog.csdn.net/xietansheng/article/details/72814531 Java Swing GUI 图形界面窗口开发基础教程,本教程将系统性地 ...

  7. java 日历界面_Java实现简单日历小程序 Java图形界面小日历开发

    今天给大家介绍一下如何用java swing开发一款简单的小日历,下面我们来看代码: 首先创建一个calendarbean类,用于基本的日期计算: package other1; import jav ...

  8. java简易日历程序报告_Java实现简单日历小程序 Java图形界面小日历开发

    今天给大家介绍一下如何用Java swing开发一款简单的小日历,下面我们来看代码: 首先创建一个CalendarBean类,用于基本的日期计算: package other1; import jav ...

  9. Java Swing 界面学习笔记

    目录 一.Java Swing组件之间的继承关系 二.JFrame 三.JDialog 四.常用面板 五.常用的组件 1.JLabel标签组件 2.JButton按钮组件 3.菜单栏 4.文本组件 5 ...

最新文章

  1. LeetCode第九题—— Palindrome Number(判断回文数)
  2. 有关ftp4j的FTPListParseException异常
  3. C语言makefile文件
  4. P3272 [SCOI2011]地板(插头DP)
  5. Windows 7技巧之Telnet组件消失之迷
  6. 类似No module named 'bs4'等错误的解决方法
  7. 2020年上半年家电市场报告
  8. JS密码校验规则前台验证(不能连续字符(如123、abc)连续3位或3位以上)(不能相同字符(如111、aaa)连续3位或3位以上)...
  9. php 分类代码,php无限分类的图文代码介绍
  10. python中引入包的时候报错AttributeError: module ‘sys‘ has no attribute ‘setdefaultencoding‘解决方法?
  11. Python selenium 延时的几种方法
  12. C语言编程QQ管理系统,c语言制作学生管理系统srrpqq67.doc
  13. 钓鱼网站 (搬运自common craft )
  14. linux系统下安装oracle客户端
  15. 三星mega2 android os,三星G7508Q (Galaxy Mega 2 双4G)一键救砖教程,轻松刷回官方系统...
  16. linux 计划任务的使用
  17. 高端计算机教室,惟义楼高端智慧教室!360°高清全景抢先看
  18. SolidWorks用鼠标中键控制模型的旋转、缩放和平移
  19. rails 创建_使用Rails和Icecast创建在线流媒体广播
  20. 微信公众号推送天气(最近超火的小玩意)

热门文章

  1. [Python面试][基础算法题]Python基础面试(基础算法题目较多)
  2. Chrome谷歌浏览器屏蔽百度搜索右侧广告推荐方法
  3. 粒子特效-Xffect
  4. 创维电视android,当贝市场创维酷开专用版
  5. 计算机专业网名英语翻译,个性网-网名-各种英文网名带翻译*英文网名
  6. 1Mbps带宽到底能够达到什么效果,看看下面的介绍就懂了。
  7. hdu5514Frogs
  8. 【水果大全】快看,你属于哪种水果身材?
  9. NOI2002银河英雄传说——带权并查集
  10. 深度解析卡尔曼滤波在IMU中的使用