Java界面编程--登陆界面

组件分类
容器组件:容纳其他组件
顶级容器组件:所有其他组件必须添加在其上 才能显示
元素组件:和用户交互的功能 输入 输出等等

布局:管理组件在容器中的排布方式 摆放规则
流式布局:将所有组件从左到右依次摆放 摆放不下 则换行
Dimension 对象= new Dimension(460, 30);
setPreferredSize(对象);
FlowLayout flowL = new FlowLayout();流式布局
组件.setLayout(flowL);

  
	import java.awt.Dimension;//引入不同类的方法
	import java.awt.FlowLayout;
	import javax.swing.ImageIcon;
	import javax.swing.JFrame;
	import javax.swing.JLabel;
	import javax.swing.JTextField;
	import javax.swing.JButton;
	import javax.swing.JCheckBox;
	public class MyUI {

		public static Object loginFrame;

		public void showUI() {//创建窗体的方法 封装后放入主函数比较方便
			JFrame loginFrame = new JFrame();//实例化对象
			//设置窗体的属性 大小、关闭时的操作
			loginFrame.setSize(550, 480);
			loginFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//或3 意义:退出的同时关闭程序
			//设置窗体的布局
			FlowLayout flowL = new FlowLayout();//从左到右排列 括号里面输入的是可以显示的东西
			loginFrame.setLayout(flowL);
			
			//创建输入框的对象
			JTextField nameInput = new JTextField();
			JTextField nameInput1 = new JTextField();
			//设置输入框的大小
			Dimension inputSize = new Dimension(460, 30);//用到的类 
			nameInput.setPreferredSize(inputSize);//方法
			nameInput1.setPreferredSize(inputSize);
			//添加到窗体上
			loginFrame.add(nameInput);
			JLabel registerLabel = new JLabel("注册账号");
		//	Dimension inputSize4 = new Dimension(50, 50);
		//	registerLabel.setPreferredSize(inputSize4);
			JCheckBox check1= new JCheckBox("记住密码");
			JCheckBox check2= new JCheckBox("自动登录");
			Dimension inputSize5 = new Dimension(400, 30);
			check1.setPreferredSize(inputSize5);
			loginFrame.add(registerLabel);
			loginFrame.setVisible(true);
			loginFrame.add(nameInput1);
			JLabel registerLabel1 = new JLabel("找回密码");
			loginFrame.add(registerLabel1);
			loginFrame.setVisible(true);
			loginFrame.add(check1);
			loginFrame.setVisible(true);
			loginFrame.add(check2);
			loginFrame.setVisible(true);
			//创建按钮
			//javax.swing.
			JButton button = new JButton("登录");
			Dimension inputSize3 = new Dimension(100,40);
			button.setPreferredSize(inputSize3);
			//添加到
			loginFrame.add(button);
			loginFrame.setVisible(true);
			UIListener loginL = new UIListener();
			//给按钮添加事件监听器
			button.addActionListener(loginL);
			//把输入框的值传入监听器中
			loginL.namelnput = nameInput;
			loginL.namelnput1 = nameInput1;
			loginL.loginFrame = loginFrame;
		}
		public static void main(String[] args) {
			MyUI ui = new MyUI();
			ui.showUI();
				
			}
		}

监听器部分`

import javax.swing.JFrame;
import javax.swing.JOptionPane;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JTextField;

public class UIListener implements ActionListener{
	JTextField namelnput;
	JFrame loginFrame;
	JTextField namelnput1;
	JOptionPane p = new JOptionPane();
	
	public void actionPerformed(ActionEvent e){
			String name = namelnput.getText();
			String namec = namelnput1.getText();
			if(name.equals("01234") && namec.equals("012")){
				System.out.println("登陆成功");
				JOptionPane.showMessageDialog(null,"登陆成功");
				loginFrame.dispose();
			}else{
				System.out.println("登陆失败");
				JOptionPane.showMessageDialog(null,"账号或密码错误","提醒",JOptionPane.ERROR_MESSAGE);
				JOptionPane.showMessageDialog(null,"登陆失败");
			}
		}	
	}
	
`
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值