使用java swing实现qq登录界面示例分享

用Java Swing做的一个QQ登录界面

代码如下:

import java.awt.Container;
import java.awt.Image;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPasswordField;
import javax.swing.JTextField;

/**
 * 仿QQ登录界面
 *
 * @author jiang
 */
public class GUIQQ extends JFrame {
    // 用户名
    private JTextField username;
    // 密码
    private JPasswordField password;
    // 小容器
    private JLabel jl1;
    private JLabel jl2;
    private JLabel jl3;
    private JLabel jl4;

// 小按钮
    private JButton bu1;
    private JButton bu2;
    private JButton bu3;

// 复选框
    private JCheckBox jc1;
    private JCheckBox jc2;

// 列表框
    private JComboBox jcb;

/*
     * 构造方法
     */
    public GUIQQ() {
        // 设置窗口标题
        this.setTitle("QQ2012正式版");
        // 窗体组件初始化
        init();
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        // 设置布局方式为绝对定位
        this.setLayout(null);

this.setBounds(0, 0, 355, 265);
        // 设置窗体的标题图标
        Image image = new ImageIcon("e:/a.gif").getImage();
        this.setIconImage(image);

// 窗体大小不能改变
        this.setResizable(false);

// 居中显示
        this.setLocationRelativeTo(null);

// 窗体可见
        this.setVisible(true);
    }

/*
     * 初始化方法
     */
    public void init() {
        // 创建一个容器
        Container con = this.getContentPane();
        jl1 = new JLabel();
        // 设置背景图片
        Image image1 = new ImageIcon("e:/background.jpg").getImage();
        jl1.setIcon(new ImageIcon(image1));
        jl1.setBounds(0, 0, 355, 265);

// QQ登录头像设定
        jl2 = new JLabel();
        Image image2 = new ImageIcon("e:/a.gif").getImage();
        jl2.setIcon(new ImageIcon(image2));
        jl2.setBounds(40, 95, 50, 60);

// 用户号码登录输入框
        username = new JTextField();
        username.setBounds(100, 100, 150, 20);
        // 用户号码登录输入框旁边的文字
        jl3 = new JLabel("注册账号");
        jl3.setBounds(260, 100, 70, 20);

// 密码输入框
        password = new JPasswordField();
        password.setBounds(100, 130, 150, 20);
        // 密码输入框旁边的文字
        jl4 = new JLabel("找回密码");
        jl4.setBounds(260, 130, 70, 20);

// 输入框下方文字
        jc1 = new JCheckBox("记住密码");
        jc1.setBounds(105, 155, 80, 15);
        jc2 = new JCheckBox("自动登录");
        jc2.setBounds(185, 155, 80, 15);
        // 用户登录状态选择
        jcb = new JComboBox();
        jcb.addItem("在线");
        jcb.addItem("隐身");
        jcb.addItem("离开");
        jcb.setBounds(40, 150, 55, 20);

// 按钮设定
        bu1 = new JButton("登录");
        bu1.setBounds(280, 200, 65, 20);
        // 给按钮添加1个事件
        bu1.addActionListener(new ActionListener() {

@Override
            public void actionPerformed(ActionEvent e) {
                String str=e.getActionCommand();
                if("登录".equals(str)){
                    String getName =username.getText();
//                  String getPwd =password.getText();
                     JOptionPane.showConfirmDialog(null, "您输入的用户名是"+getName);
                }

}
        });
        bu2 = new JButton("多账号");
        bu2.setBounds(5, 200, 75, 20);
        bu3 = new JButton("设置");
        bu3.setBounds(100, 200, 65, 20);

// 所有组件用容器装载
        jl1.add(jl2);
        jl1.add(jl3);
        jl1.add(jl4);
        jl1.add(jc1);
        jl1.add(jc2);
        jl1.add(jcb);
        jl1.add(bu1);
        jl1.add(bu2);
        jl1.add(bu3);
        con.add(jl1);
        con.add(username);
        con.add(password);
    }
    public static void main(String[] args) {
        // 实例化对象
        GUIQQ qq = new GUIQQ();
    }

}

时间: 2014-03-31

Java Swing中的工具栏(JToolBar)和分割面版(JSplitPane)组件使用案例

一:工具栏(JToolBar) 代码示例: 复制代码 代码如下: import javax.swing.*; //工具栏的使用案例 public class JToolBarDemo2_jigloo extends javax.swing.JFrame { private JToolBar myJToolBar;  private JButton jB_file;  private JButton jB_edit;  private JButton jB_tools;  private JBut

Java Swing中的下拉式菜单(menu)、弹出式菜单(JPopupMenu)、选项卡窗体(JTabbedPane)组件使用案例

菜单是GUI中最常用的组件,菜单不是Component类的子类,不能放置在普通容器中,不受布局管理器的约束,只能放置在菜单栏中. 菜单组件由菜单栏 (MenuBar).菜单(Menu)和菜单项(MenuItem)三部分组成. 一个菜单栏由若干个菜单组成,一个菜单又由若干个菜单项组成.一般菜单栏放 Frame 窗口中,只要调用 Frame 类的 setMenuBar()方法即可. 常用的菜单有:下拉式菜单和弹出式菜单(独立显示,可出现在任意地方). 一:下拉式菜单的创建步骤: 1.创建一个菜单栏.

java Swing实现选项卡功能(JTabbedPane)实例代码

 Swing实现选项卡功能(JTabbedPane) 先创建JTabbedPane对象,构造函数可使用JTabbedPane(int tabPlacement).tabPlacement是JTabbedPane从接口 javax.swing.SwingConstants 继承的字段.可以是BUTTOM,TOP等.如下代码所示: JFrame jframe = new JFrame("TEST"); <a href="http://lib.csdn.net/base/do

jquery缓动swing liner控制动画过程不同时刻的速度

jQuery效果函数(slideUp().fadeIn()等)和animation()函数都接收另一个用来控制动画过程的速度的参数,这就是缓动(easing),它确定了动画过程不同时刻的速度.例如,将一个元素移过页面的时候,可能让这个元素缓慢地开始移动,然后变得很快,最后随着动画的完成再次慢下来.给动画添加缓动,使得动画在视觉上更有趣且更有动态感. jQuery只包含了两个缓动方法:swing和linear.linear方法提供了一个稳定的动画,以使得动画的每个步骤都是相同的(例如,如果要让一个

Java Swing中的JButton、JComboBox、JList和JColorChooser组件使用案例

Swing 的组件与AWT 组件相似,但又为每一个组件增添了新的方法,并提供了更多的高级组件. Swing 的基本组件: 1.按钮(JButton): Swing 中的按钮可以显示图像,并且可以将按钮设置为窗口的默认图标,而且还可以将多个图像指定给一个按钮. (1).JButton 常用的构造方法. JButton(String text):按钮上显示字符. JButton(Icon icon) :按钮上显示图标. JButton(String text, Icon icon):按钮上既显示图标

Java Swing中的表格(JTable)和树(JTree)组件使用实例

一:表格(JTable): 1.基本概念: 表格(JTable)是Swing 新增加的组件,主要是为了将数据以表格的形式显示.给显示大块数据提供了简单的机制. 2.常用构造方法: * JTable():使用系统默认的模型创建一个JTable 实例.  * JTable(int numRows,int numColumns):创建一个使用DefaultTableModel 指定行.列的空表格.  * JTable(Object[ ][ ] rowData,Object[ ][ ] columnNa

Java Swing中的文本框(JTextField)与文本区(JTextArea)使用实例

一:JTextField的(文本框)使用: JTextField 是一个轻量级组件,它允许编辑单行文本. 1.JTextField的常用构造方法: JTextField() 构造一个新的 TextField. JTextField(int columns) 构造一个具有指定列数的新的空 TextField. JTextField(String text) 构造一个用指定文本初始化的新TextField. JTextField(String text, int columns) 构造一个用指定文本

java swing标准对话框具体实现

复制代码 代码如下: package test001;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JOptionPane;import javax.swing.JToolBar;public class TestJOptionPane implements

可视化Swing中JTable控件绑定SQL数据源的两种方法深入解析

在 MyEclipse 的可视化 Swing 中,有 JTable 控件.JTable 用来显示和编辑常规二维单元表.那么,如何将 数据库SQL中的数据绑定至JTable中呢?在这里,提供两种方法.JTable的构造方法通过查阅Java的API,可以可以得到JTable的两个重要的构造方法:JTable(Object[][] rowData, Object[] columnNames)构造一个 JTable 来显示二维数组 rowData 中的值,其列名称为 columnNames.JTable

java swing中实现拖拽功能示例

java实现拖拽示例 Swing中实现拖拽功能,代码很简单,都有注释,自己看,运行效果如下图: 复制代码 代码如下: package com; import java.awt.*;import java.awt.datatransfer.DataFlavor;import java.awt.dnd.DnDConstants;import java.awt.dnd.DropTarget;import java.awt.dnd.DropTargetAdapter;import java.awt.dn

vue2.0使用Sortable.js实现的拖拽功能示例

简介 在使用vue1.x之前的版本的时候,页面中的拖拽功能,我在项目中是直接用的jquery ui中的sortable.js,只是在拖拽完成后,在update的回调函数中又重新排序了存放数据的数组.但是当把vue升级到2.0以上后发现拖拽功能失效了,于是使用了下面代码. 该案例主要是在用于vuejs2.0中实现的拖拽功能,用到的的js有Sortable.js,vuedraggable.js,当然还有vue.min.js,提供的案例使用的require.js加载. 实现效果 实现后的效果如图所示:

Android利用RecyclerView实现全选、置顶和拖拽功能示例

前言 今天给大家分享是如何在RecyclerView实现全选,ItemTouchHelper实现侧滑删除,拖拽功能.比较基础.关于RecyclerView的强大,就不多说了.在Android L SDK发布的新API中最有意思的就是RecyclerView 和 CardView了, 按照官方的说法, RecyclerView 一个ListView 的一个更高级更灵活的一个版本, 可以自定义的东西太多了. 效果: RecyclerView实现全选,ItemTouchHelper实现侧滑删除,拖拽功

JS基于面向对象实现的拖拽功能示例

本文实例讲述了JS基于面向对象实现的拖拽功能.分享给大家供大家参考,具体如下: <html xmlns="http://www.w3.org/1999/xhtml"> <head> <style> #div1 {width:100px; height:100px; background:red; position:absolute;} #div2 {width:100px; height:100px; background:yellow; posit

JS实现的简单拖拽功能示例

本文实例讲述了JS实现的简单拖拽功能.分享给大家供大家参考,具体如下: 1.实例代码: <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>js实现拖拽</title> <style> #water{ width:400px; height:188px; background-color: #ff6600; } #water:hov

jQuery实现的简单拖拽功能示例

本文实例讲述了jQuery实现的简单拖拽功能.分享给大家供大家参考,具体如下: <!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>拖拽</title> <style> *{ padding: 0; margin: 0; } div{ width: 100px; height: 100px; ba

js实现的简练高效拖拽功能示例

本文实例讲述了js实现的简练高效拖拽功能.分享给大家供大家参考,具体如下: 运行效果图如下: 具体代码如下: <!DOCTYPE HTML> <html> <head> <meta http-equiv="content-type" charset="utf-8" /> <meta http-equiv="content-type" content="text/html"

Vue自定义指令拖拽功能示例

下面给大家分享vue自定义指令拖拽功能代码,具体代码如下所示: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>实例方法</title> <meta name="viewport" content="width=device-width, initial-scale=1

Android中RecyclerView拖拽、侧删功能的实现代码

废话不多说,下面展示一下效果. 这是GridView主文件实现. public class GridViewActivity extends AppCompatActivity { RecyclerView mRecyclerView; List<String> mStringList; RecyclerAdapter mRecyAdapter; @Override protected void onCreate(@Nullable Bundle savedInstanceState) { s

Android中RecyclerView实现滑动删除与拖拽功能

前言 从Android 5.0开始,谷歌推出了新的控件RecyclerView,相对于早它之前的ListView,优点多多,功能强大,也给我们的开发着提供了极大的便利,今天自己学习一下RecyclerView轻松实现滑动删除及拖拽的效果. 如下图. 相信研究过RecyclerView的同学,应该很清楚该怎么实现这样的效果,若是用ListView,这样的效果实现起来可能就有点麻烦,但是在强大的RecyclerView面前这样的的效果只需很少的代码,因为谷歌给我们提供了强大的工具类ItemTouch