制作用户登录界面(JAVA实现)
设计实现如图所示的个人信息注册。包含单选按钮、多选按钮、下拉框事件。
Zuoye类:
package example02;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener; import javax.swing.ButtonGroup;
import javax.swing.DefaultComboBoxModel;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JTextArea;
import javax.swing.JTextField; public class Zuoye extends JFrame{
//成员变量
JPanel pnlMain;
JLabel lblUserName,lblUserPwd,lblSex,lblHobby,lblLocation;
JRadioButton rabM,rabW;
ButtonGroup btgSex;//创建是为了使rabM,rabW同组
JCheckBox chkRead,chkSwim,chkRun;
JComboBox<String> cmbLocation;
DefaultComboBoxModel<String> dcmLocation;
String location="";
JTextField txtUserName,txtJob;
JButton btnEnsure,btnCancel;
JTextArea txt;
//构造方法
public Zuoye() {
pnlMain=new JPanel(null);
lblUserName=new JLabel("姓名:");
txtUserName=new JTextField();
lblUserPwd=new JLabel("职业:");
txtJob=new JTextField();
lblSex=new JLabel("性别:");
rabM=new JRadioButton("男");
rabW=new JRadioButton("女");
btgSex=new ButtonGroup();
lblHobby=new JLabel("兴趣爱好:");
chkRead=new JCheckBox("阅读");
chkSwim=new JCheckBox("游泳");
chkRun=new JCheckBox("跑步");
lblLocation=new JLabel("所在地:");
cmbLocation=new JComboBox<String>();
dcmLocation=new DefaultComboBoxModel<String>();
btnEnsure=new JButton("确认");
btnCancel=new JButton("取消");
txt=new JTextArea();
init();
}
//初始化方法
private void init() {
this.setBounds(550,200,270,400);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setTitle("My first window");
this.setResizable(false);
//设置各个控件的位置和坐标
lblUserName.setBounds(20,20,75,22);
lblUserPwd.setBounds(20,60,75,22);
lblSex.setBounds(20,90,75,22);
lblHobby.setBounds(20, 120, 75, 22);
lblLocation.setBounds(20, 155, 75, 22);
txtUserName.setBounds(90,20,120,22);
txtJob.setBounds(90,60,120,22);
rabM.setBounds(90,90,40,22);
rabW.setBounds(140,90,40,22);
chkRead.setBounds(85, 120, 57, 22);
chkSwim.setBounds(140, 120, 57, 22);
chkRun.setBounds(195, 120, 57, 22);
cmbLocation.setBounds(100, 155, 70, 22);
setCmbLocationData();
btnEnsure.setBounds(50,200,75,22);
btnCancel.setBounds(150,200,75,22);
txt.setBounds(70,240,140,90);
txt.setVisible(false);
//将所有控件压入容器中
btgSex.add(rabM);
btgSex.add(rabW);
pnlMain.add(lblUserName);
pnlMain.add(lblUserPwd);
pnlMain.add(txtUserName);
pnlMain.add(txtJob);
pnlMain.add(lblSex);
pnlMain.add(rabM);
pnlMain.add(rabW);
pnlMain.add(lblHobby);
pnlMain.add(chkRead);
pnlMain.add(chkRun);
pnlMain.add(chkSwim);
pnlMain.add(lblLocation);
pnlMain.add(cmbLocation);
pnlMain.add(btnEnsure);
pnlMain.add(btnCancel);
pnlMain.add(txt);
this.add(pnlMain);
this.setVisible(true);
//使用itemListener匿名监听下拉框控件
cmbLocation.addItemListener(new ItemListener() {
@Override
public void itemStateChanged(ItemEvent e) {
location=cmbLocation.getSelectedItem().toString();
}
});
//使用按钮监听
btnEnsure.addActionListener(new ZuoyeFrame_btnEnsure_ActionListener(this));
//使用内部类按钮监听
btnCancel.addActionListener(new ZuoyeFrame_btnQuit_ActionListener());
}
//设计下拉框里的选项
public void setCmbLocationData() {
dcmLocation.addElement("北京");
dcmLocation.addElement("上海");
dcmLocation.addElement("深圳");
dcmLocation.addElement("广州");
dcmLocation.addElement("赣州");
cmbLocation.setModel(dcmLocation);
}
//退出按钮监听内部类
class ZuoyeFrame_btnQuit_ActionListener implements ActionListener{
@Override
public void actionPerformed(ActionEvent e) {
txt.setVisible(false);
}
}
public static void main(String[] args) {
new Zuoye();
}
}
ZuoyeFrame_btnEnsure_ActionListener类
package example02;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener; //登陆按钮监听类
public class ZuoyeFrame_btnEnsure_ActionListener implements ActionListener{
Zuoye zy;
String gender="";
String hobby="";
public ZuoyeFrame_btnEnsure_ActionListener(Zuoye zy) {
this.zy = zy;
}
@Override
public void actionPerformed(ActionEvent e) {
zy.txt.setVisible(true);
zy.txt.setLineWrap(true);
zy.txt.setText("姓名:"+zy.txtUserName.getText()+'\n');
zy.txt.append("职业:"+zy.txtJob.getText()+'\n'); if(zy.rabM.isSelected()) {
gender+="男";
}else if(zy.rabW.isSelected()) {
gender+="女";
}
zy.txt.append("性别:"+gender+'\n'); if(zy.chkRead.isSelected()) {
hobby+="阅读";
}
if(zy.chkSwim.isSelected()) {
hobby+="游泳";
}
if(zy.chkRun.isSelected()) {
hobby+="跑步";
}
zy.txt.append("兴趣爱好:"+hobby+'\n'); zy.txt.append("所在地:第"+(zy.cmbLocation.getSelectedIndex()+1)+"项 "+zy.location);
}
}
制作用户登录界面(JAVA实现)的更多相关文章
- html简约风用户登录界面网页制作html5-css-jquary-学习模版
2018--12-12 喜迎双十二,咳咳,,,,我不是打广告哈,购物的节日也不要忘记学习. 大家好,我又来了. 今天抽出来空把自己的学习心得给大家分享,这是一个可开发可扩展的用户登录界面,用于开发学习 ...
- 编写Java程序,使用Swing布局管理器与常用控件,实现用户登录界面
返回本章节 返回作业目录 需求说明: 使用Swing布局管理器与常用控件,实现用户登录界面 实现思路: 创建用户登录界面的类LoginFrame,在该类中创建无参数的构造方法,在构造方法中,设置窗体大 ...
- Android studio 开发一个用户登录界面
Android studio 开发一个用户登录界面 activity_main.xml <?xml version="1.0" encoding="utf-8&qu ...
- jQuery和CSS3炫酷GOOGLE样式的用户登录界面
这是一款使用jQuery和CSS3打造的GOOGLE样式的用户登录界面特效.该登录界面特效中,右上角的小问号和错误提示小图标使用SVG来制作.username和password输入框採用浮动标签特效. ...
- 很漂亮的用户登录界面HTML模板
效果预览:http://keleyi.com/keleyi/phtml/divcss/21.htm HoverTree开源项目实现了分层后,准备实现管理员后台登录,这里先把登录界面的HTML模板整理好 ...
- 美化VC界面(用户登录界面)
源代码:下载 VC开发程序单调的界面相信大家都是深有感触,提到界面美化编程,人们都会说做界面不要用VC写,太难了.一句俗语:难者不会,会者不难.VC的美化界面编程并没有人们想像的那么难.这篇文章是我写 ...
- java web用户登录界面
做这次实验,主要用到了mysql java web 的 内容 实验代码: IUserDao.java package com.jaovo.msg.dao; import java.util.List ...
- Java Web实现用户登录界面
一.学习Java Web需要的技术: Java语言基础:算法基础.常用数据结构.编程规范. 掌握常见的数据结构和实用算法:培养良好的编程习惯. Java面向对象:封装.继承.多态等,面向对象程序设计, ...
- Java Web 开发利用Struts2+Spring+mybatis写一个用户登录界面以及简单的数据交互
框架的东西太复杂也难以讲通,直接上代码: 一.首先得配置环境 和导入必要的jar包 有一些重要的如下: Filter文件夹下的SafetyFilter.java model文件夹下的 Global ...
随机推荐
- 长时间关机测试脚本.VBS
Sub Main Dim cnt Dim delay Dim time Dim atttime atttime = 20 delay = 3000 time = 50 cnt_time=3 crt.s ...
- 【C++】括号匹配
#include<iostream> #include<cstring> #include<cstdlib> #include<queue> using ...
- CF1093F Vasya and Array
题目链接:洛谷 以后还是要多打CF,不然就会错过这些很好的思维题了.我dp学得还是太烂,要多总结. 首先$len=1$就直接输出0. 我们考虑$dp[i][j]$表示前$i$个数的答案,而且第$i$个 ...
- Java集合List、Set、Map
集合是 java 基础中非常重要的一部分,同样也是 Java 面试中很重要的一个知识点.所以,给王小整理了这篇关于集合的文章. 1.接口继承关系以及实现 集合类存放于 Java.util 包中,主要有 ...
- vi命令插入
1.插入 i :在当前光标前插入 I:在当前行的行首插入 a:在当前光标后插入 A:在当前行的行尾插入 o:在当前行的下面另起一行插入 O:在当前行的上面另起一行插入 s:删除当前光标的字符并开始插入 ...
- package,继承,访问修饰符
1.package 包(package),用于管理程序中的类,可用于处理类的同名问题. 1.1定义package的方法 package 包名; package用于定义包,必须写在源文件有效代码的第一句 ...
- 2018-2019-2 网络对抗技术 20165321 Exp2 后门原理与实践
基础问题回答 (1)例举你能想到的一个后门进入到你系统中的可能方式? 答:网络钓鱼植入木马. (2)例举你知道的后门如何启动起来(win及linux)的方式? 答:绑定在合法软件上启动. (3)Met ...
- django js引入失效问题
今天将项目中html文件下的自定义scrept代码单独独立,结果js引入无效,没有任何时间效果,在浏览器查看引入文件也正常. 后来发现自己引入的位置不对,js的引入文件应该放在body体内,而我把他们 ...
- validationEngine 使用
引入文件 环境在 jQuery 下 , 所有先要引入 jQuery <%--校验样式--%> <link rel="stylesheet" href=" ...
- 18.12.02-C语言练习:韩信点兵
C语言练习:韩信点兵 题目说明:本题是中国经典问题,有多种解法,从数论课程角度看,是一个不定方程组,而且答案不唯一. 但这里采用程序解法,使用的是暴力破解.枚举可能的解,然后根据条件判断,满足所有条件 ...