使用Java的Frame类编写的QQ登录界面
public static void main(String[] args) {
Frame f = new Frame();
//关闭窗体
f.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
f.setTitle("QQ登录");//添加标题
f.setSize(420, 230);//设置窗体的尺寸
f.setLocation(455, 207);//设置窗体出现坐标
f.setLayout(null);//清除窗体默认布局
f.setIconImage(Toolkit.getDefaultToolkit().getImage("F:\\qq.png"));//设置图标
f.setResizable(false);//禁止窗体改变尺寸
//账号标签
Label user = new Label("账号:");
user.setLocation(75, 50);
user.setSize(50, 25);
user.setFont(new Font("微软雅黑",Font.BOLD,16));
f.add(user);
//密码标签
Label password = new Label("密码:");
password.setLocation(75, 100);
password.setSize(50, 25);
password.setFont(new Font("微软雅黑",Font.BOLD,16));
f.add(password);
//输入账号的文本框
TextField t1 = new TextField();
//键盘输入监听
t1.addKeyListener(new KeyAdapter() {
@Override
public void keyTyped(KeyEvent e) {
int key = e.getKeyChar();
if(key>=KeyEvent.VK_0 && key<=KeyEvent.VK_9){
}else{
e.consume();
}
}
});
t1.setSize(220,25);
t1.setLocation(130, 50);
t1.setFont(new Font("微软雅黑",Font.PLAIN,16));
f.add(t1);
//输入密码的文本框
TextField t2 = new TextField();
t2.setEchoChar('*');
t2.setSize(220,25);
t2.setLocation(130, 100);
t2.setFont(new Font("微软雅黑",Font.PLAIN,16));
f.add(t2);
//登录按钮
Button login = new Button("登录");
//按钮触发事件
login.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
String zh = t1.getText();
String ma = t2.getText();
if(zh.equals("34598700") && ma.equals("meinv123")){
System.out.println("登录成功");
}else{
JOptionPane.showMessageDialog(f, "账号或密码输入错误");
t1.setText("");
t2.setText("");
}
}
});
login.setLocation(100, 160);//按钮在窗体中的坐标
login.setSize(75, 30);//设计按钮的尺寸
f.add(login);//把按钮元素添加到窗体中
//注册按钮
Button reg = new Button("注册");
//触发事件
reg.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
new Reg();
}
});
reg.setLocation(250, 160);//按钮在窗体中的坐标
reg.setSize(75, 30);//设计按钮的尺寸
f.add(reg);//把按钮元素添加到窗体中
f.setVisible(true);//设置窗体的可见性
}
使用Java的Frame类编写的QQ登录界面的更多相关文章
- java代码完全手写模仿qq登录界面
这是我模仿QQ2015版界面,实现的基本功能有登陆验证,重置等,当然直接复制代码运行是不一样的,还要注意自己插入自己的图片. 结果截图如下所示: import java.awt.BorderLayou ...
- 编写Java程序,使用Swing布局管理器和常用控件,实现仿QQ登录界面
返回本章节 返回作业目录 需求说明: 使用Swing布局管理器和常用控件,实现仿QQ登录界面 实现思路: 创建登录界面的类QQLogin,该类继承父类JFrame,在该类中创建无参数的构造方法,在构造 ...
- java 制作QQ登录界面
package org.eclipse.wb.swing; import java.awt.BorderLayout;import java.awt.EventQueue; import javax. ...
- 界面编程模仿篇(QQ登录界面逼真篇)
写了好多天的爬虫,偷空前前后后用了两天的时间(排除吃饭睡觉)写完了这个QQ登录界面,看起来还凑和着吧,如果是的大神的,莫见笑,纯属业余作品,废话先不多说,截图如下,其中第二幅图片中的红色方框部份有待完 ...
- JavaSwing仿QQ登录界面,注释完善,适合新手学习
使用说明: 这是一个java做的仿制QQ登录界面,界面仅使用一个类, JDK版本为jdk-11 素材包的名字为:素材(下载)请在项目中新建一个名字为“素材”的文件夹. 素材: https://pan. ...
- swing实现QQ登录界面1.0( 实现了同一张图片只加载一次)、(以及实现简单的布局面板添加背景图片控件的标签控件和添加一个关闭按钮控件)
swing实现QQ登录界面1.0( 实现了同一张图片只加载一次).(以及实现简单的布局面板添加背景图片控件的标签控件和添加一个关闭按钮控件) 代码思路分析: 1.(同一张图片仅仅需要加载一次就够了,下 ...
- Android菜鸟的成长笔记(3)——给QQ登录界面说So Easy
原文:Android菜鸟的成长笔记(3)--给QQ登录界面说So Easy 上一篇:Android菜鸟的成长笔记(2)--第一个Android应用 我们前面已经做了第一个Android应用程序,虽然有 ...
- QQ登录界面布局
简单的qq登录界面布局 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmln ...
- [转]Android:布局实例之模仿QQ登录界面
Android:布局实例之模仿QQ登录界面 预览图: 准备: 1.找到模仿对象 QQ登陆界面UI下载>>>>> 2.导入工程 3.查看布局结构和使用控件 其对应效果图分布 ...
随机推荐
- 最全的 JavaScript 知识总结
来源于:http://gcdn.gcpowertools.com.cn/showtopic-28404-1-3.html?utm_source=gold.xitu.io&utm_medium= ...
- MVC其实很简单(Django框架)
Django框架MVC其实很简单 让我们来研究一个简单的例子,通过该实例,你可以分辨出,通过Web框架来实现的功能与之前的方式有何不同. 下面就是通过使用Django来完成以上功能的例子: 首先,我们 ...
- Redis设计与实现读书笔记(一) SDS
作为redis最基础的底层数据结构之一,SDS提供了许多C风格字符串所不具备的功能,为之后redis内存管理提供了许多方便.它们分别是: 二进制安全 减少字符串长度获取时间复杂度 杜绝字符串溢出 减少 ...
- System.Environment.CurrentDirectory和Application.StartupPath
System.Environment.CurrentDirectory的含义是获取或设置当前工作路径,而Application.StartupPath是获取程序启动路径,表面上看二者没什么区别,但实际 ...
- 关于我-dinphy简介
别 名:孜_行 英文名:dinphy QQ交流群:588266650 兴趣爱好:听音乐.打篮球.热衷于诗词文学 专 业:计算机 了 解:windows及Linux.android的基本 ...
- the user operation is waiting
eclipse在编辑完代码保存的时候,弹出一个进度框,等N长时间,标题是"user operation is waiting",里面显示的是building workspace的进 ...
- nodejs querystring参数处理
在node js z中,用querystring来进行客户端与服务器的数据交换时序列化数据,是数据处理的小利器. 如:在node中执行这个命令:querystring.stringify({numbe ...
- 【ASP.NET程序员福利】打造一款人见人爱的ORM(一)
“很多人都不太认可以第三方ORM,因为考虑的点不够全面,没有大用户群体的ORM有保证,这点是不可否认确是事实.但是往往用户群体大的ORM又有不足之处,今天我们就来聊聊关于ORM的话题,打造 ...
- p/invoke碎片--对数组的封送处理
因为数组是引用类型,所以数组的处理根据数组元素的类型是否为“可直接传递到非托管代码”的类型而分为两种情况.主要目标是看内存是怎么变化的,是复制还是锁定. 数组中的元素是"可直接传递到非托管代 ...
- java.lang.NoClassDefFoundError: Lorg/slf4j/Logger;
如果你出现类似如下错误 1. Install tomcat7 in my home directory and set up `CATALINA_HOME` environment variable ...