当前位置:   article > 正文

Swing GUI界面设计_swing gui界面设计,模拟qq登录界面 运行效果如下: 1.在登录界面输入用户名和密码,

swing gui界面设计,模拟qq登录界面 运行效果如下: 1.在登录界面输入用户名和密码,

实验目的:
1.掌握Swing常用的组件的使用;
2.掌握程序界面开发的步骤;
3.掌握事件监听器的使用。

实验内容:

实验一:模拟QQ登录界面

运行效果如下:
  • 1

1.在登录界面输入用户名和密码

在这入图片描述
2.点击“确定”按钮,弹出消息提示框,显示输入的用户名和密码。

在这里插入图片描述
源代码:

package test12;

import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class QQLogin extends JFrame implements ActionListener{//本身是个容器、监听器
	
	JLabel jl1 = new JLabel("用户名:");//标签:设置用户名
	JTextField jtf1 = new JTextField(20);//文本域组件
	
	JLabel jl2 = new JLabel("密  码:");//标签:设置密码
	JTextField jtf2 = new JTextField(20);//文本域组件
	
	JButton jb1 = new JButton("确定");//按钮类组件:设置按钮"确定"
	JButton jb2 = new JButton("取消");//按钮类组件:设置按钮"取消"
	
	JPanel jp1 = new JPanel();//第一行        建立JPanel中间容器
	JPanel jp2 = new JPanel();//第二行
	JPanel jp3 = new JPanel();//第三行
	
	public QQLogin() {
		this.setLayout(new GridLayout(5,1));//设置GridLayout网络布局管理器
		this.setTitle("QQ登录界面");
	    this.setSize(600,400);//窗体大小    因为对象本身就是窗体,所以用this.xxx来设置窗体
	    this.setLocationRelativeTo(null);//把窗体放在屏幕中间
	    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//关闭窗口程序退出
	    //设置退出键   JFrame.EXIT_ON_CLOSE其实与数字3是等价的,但是把数字3放在这里无意义,所以一般不放,理解与3等价即可
	    
	    jp1.add(jl1); //第一行是用户名
	    jp1.add(jtf1);
	    jp2.add(jl2); //第二行是密码
	    jp2.add(jtf2);
	    jp3.add(jb1);//第三行是 两个按钮
	    jp3.add(jb2);
	    
	    this.add(new JLabel());//把界面设计的三行文本框中
	    this.add(jp1);//把第一二三行放入容器里
	    this.add(jp2);
	    this.add(jp3);
	    this.add(new JLabel());
	    
	    this.jb1.addActionListener(this);//注册监听器
	    this.jb2.addActionListener(this);//注册监听器
	    
	}
	
	public static void main(String[] args) {
		QQLogin LoginWindow = new QQLogin();
		LoginWindow.setVisible(true);//使界面可视

	}
	
	@Override
	public void actionPerformed(ActionEvent e) {//事件源
		if(e.getSource()==jb1) {//选择“确定”后显示内容
			String str1 = "用户名:"+jtf1.getText()+";密码:"+jtf2.getText();
			JOptionPane.showMessageDialog(this, str1);
		}
		else if(e.getSource()==jb2) {//选择“取消”后退出
			System.exit(0);
		}	
	}
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70

实验二:学生信息输入界面

运行结果如下:

1.在登录界面输入学生姓名和选择性别

在这里插入图片描述

输入我的名字,选择我的性别 (* ̄︶ ̄)

在这里插入图片描述
2.点击“确定”按钮,弹出消息提示框,显示输入的用户名和选择的性别。

在这里插入图片描述

学生信息录入界面与实验一的QQ登录界面的区别是在性别选择这里,其他的没什么差别,(* ̄︶ ̄)

源代码:

package test12;

import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class StudentLogin extends JFrame implements ActionListener{
	
	JLabel jl1 = new JLabel("学生姓名:");//标签:设置学生姓名
	JTextField jtf1 = new JTextField(15);//文本域组件
	
	JLabel jl2 = new JLabel(" 性别:");//标签:设置性别
	JComboBox<String> com = new JComboBox<String>();//选择框,性别的选择:“男”和“女”
	
	JButton jb1 = new JButton("确定");//按钮类组件:设置按钮"确定"
	JButton jb2 = new JButton("退出");//按钮类组件:设置按钮"退出"

	JPanel jp1 = new JPanel();//第一行  建立JPanel中间容器
	JPanel jp2 = new JPanel();//第二行
	JPanel jp3 = new JPanel();//第三行
	
	public StudentLogin(){
		this.setLayout(new GridLayout(4,1));//设置GridLayout网络布局管理器
		this.setTitle("学生信息输入窗口");
	    this.setSize(400,300);//窗体大小
	    this.setLocationRelativeTo(null);//把窗体放在屏幕中间
	    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//关闭窗口程序退出
	    
	    jp1.add(jl1); //第一行是学生姓名
	    jp1.add(jtf1);
	    
	    jp2.add(jl2);
	    jp2.add(com); //第二行是性别
	    com.addItem("男");
		com.addItem("女");
		
	    jp3.add(jb1);//第三行是 两个按钮
	    jp3.add(jb2);
		
	    this.add(jp1);//把第一二三行放入容器里
	    this.add(jp2);
	    this.add(jp3);
	    
	    this.jb1.addActionListener(this);//注册监听器
	    this.jb2.addActionListener(this);//注册监听器
	    
	}

	public static void main(String[] args) {
		StudentLogin LoginWindow = new StudentLogin();
		LoginWindow.setVisible(true);//使界面可视

	}

	@Override
	public void actionPerformed(ActionEvent e) {//事件源
		if(e.getSource()==jb1) {//选择“确定”后显示内容
			String sex=(String)com.getSelectedItem();//获取选择框里得到的性别
			String str1=jtf1.getText()+"是一位"+sex+"同学!";
			JOptionPane.showMessageDialog(this,str1);
		}
		else if(e.getSource()==jb2) {//选择“退出”后退出
			System.exit(0);
		}
		
	}

}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75

第一次上课,很多东西还不是很清楚,就是想记录一下这次作业,写的不好的地方一定要告诉我哟!我会认真改正的,希望下次能做得更好,小白加油!冲鸭!嘿嘿
ヾ(◍°∇°◍)ノ゙

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/298226
推荐阅读
相关标签
  

闽ICP备14008679号