首页 > 编程知识 正文

仿qq聊天界面的软件,qq界面设计分析

时间:2023-05-05 03:16:40 阅读:214881 作者:1281

基础知识 工具 一、AWT

java.awt包提供了创建界面和绘制图形图像的所有类。它里面存有各种元素:尺寸、颜色、布局等,用来设计各种模块的属性。
我们利用这些元素来给swing里的各种组件赋予属性。

Abstract Windows Toolkit(AWT)是最原始的 Java GUI(Graphical User Interface=图形用户界面) 工具包。AWT 的主要优点是,它在 Java 技术的每个版本上都成为了一种标准配置,包括早期的 Web 浏览器中的 Java 实现;另外它也非常稳定。这意味着我们不需要单独安装这个工具包,在任何一个 Java 运行环境中都可以使用它,这一点正是我们所希望的特性。 所用到的类

1.布局管理器:

流式布局器 FLowLayout
默认居中,向流水一样把各个模块从左到右(自动换行)排列下来

2.尺寸
尺寸 Dimension
本次设计用来控制文字输入框的长宽。

二、swing

javax.swing包提供了一组“轻量级”的组件,尽量让这些组件在所有平台上的工作方式相同。为解决 AWT 存在的问题而新开发的图形界面包。Swing是对AWT的改良和扩展。

Swing是一个为Java设计的GUI工具包。Swing是Java基础类的一部分。Swing包括了图形用户界面(GUI)组件如:文本框,文本域,按钮,分隔窗格和表。 所用到的类 顶级容器 JFrame图片 ImageIcon标签 JLabel输入框 JTextfield复选框 JCheckBox按钮 JButton 三、监听 基础知识

引用自 监听器入门看这篇就够了

解释

监听器就是一个实现特定接口的普通java程序,这个程序专门用于监听另一个java对象的方法调用或属性改变,当被监听对象发生上述事件后,监听器某个方法将立即被执行

组件

事件源、事件对象、事件监听器

当事件源发生某个动作的时候,它会调用事件监听器的方法,并在调用事件监听器方法的时候把事件对象传递进去。我们在监听器中就可以通过事件对象获取得到事件源,从而对事件源进行操作!

本次用一个拓展ActionListener接口的类Login_Listener来作为登录按钮是否被点击的监听器

操作

构建一个类Login_Listener来监听登录按钮是否被点击
Login_Listener类:

import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JPasswordField;import javax.swing.JTextField;public class Login_Listener implements ActionListener {/*jtx为名字输入框 jpwd为密码输入框*/JTextField jtx;JPasswordField jpwd;//响应事件epublic void actionPerformed(ActionEvent e) {if(jtx.getText().equals("name")&&jpwd.getText().equals("mima")) {System.out.println("登录成功");}else {System.out.println("登录失败");}}}

在主函数(登录界面)中的应用

//实例化 (实现了ActionListener接口的)类Login_Listener的对象Login_Listener ll= new Login_Listener();//把 监听器 ll 加入到 登录按钮 button 中button.addActionListener(ll);//传参ll.jtx=inputname;ll.jpwd=input_pwd; 实现

登录界面:

import java.awt.Dimension;import java.awt.FlowLayout;import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JCheckBox;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPasswordField;import javax.swing.JTextField;public class Login_UI {//主方法public static void main(String []args) {Login_UI lU = new Login_UI();lU.showUI();}public void showUI() {//顶级容器JFrame jf=new JFrame("仿QQ登录界面");//尺寸jf.setSize(400,400);//设置退出功能jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//布局器:流式FlowLayout fl =new FlowLayout();//设置顶级容器jf加入布局器fljf.setLayout(fl);//设置jf的属性//窗体不可改变jf.setResizable(false);//居中jf.setLocationRelativeTo(null);//图片ImageIcon image= new ImageIcon("D:\cc\图\壁纸\default.png");JLabel imagelable =new JLabel(image);//文字标签JLabel name =new JLabel("账号:");JLabel pwd = new JLabel("密码:");//输入框//尺寸Dimension inputdim = new Dimension(320,30);JTextField inputname = new JTextField();inputname.setPreferredSize(inputdim);JPasswordField input_pwd = new JPasswordField();input_pwd.setPreferredSize(inputdim);//按钮JButton button = new JButton("登录");//添加组件jf.add(imagelable);jf.add(name);jf.add(inputname);jf.add(pwd);jf.add(input_pwd);jf.add(button);//可以显示jf.setVisible(true);//实例化 (实现了ActionListener接口的)类Login_Listener的对象Login_Listener ll= new Login_Listener();//把 监听器 ll 加入到 登录按钮 button 中button.addActionListener(ll);//传参ll.jtx=inputname;ll.jpwd=input_pwd;}}

监听的类如前面所示

验证


版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。