用户名:

QQ登录界面代码

QQ登录界面代码
login.asp:
<form name="login" method="post" action="after_login.asp"> 用户名:<input name="user_name" size="12" maxlength="16">密码:<input name="password" size="12" type="password"
maxlength="16">
<input align="absMiddle" id="image1" name="image1"
src="images/login.gif" type="image" WIDTH="37" HEIGHT="20"> </form>
coon.asp:
<%
connstr = "DBQ=" + server.mappathuser.mdb") +
";DRIVER={Microsoft Access Driver (*.mdb)}"
Set conn=Server.createobject("ADODB.CONNECTION")
conn.Open connstr
%>
外加after_login.asp登录验证页面:
<!--#include file="Conn.Asp"-->
<%
Dim UserName,PassWord
UserName=replace(trim(Request.Form("Username")),"'","‘") PassWord=replace(trim(Request.Form("PassWord")),"'","‘")
If UserName="" or PassWord="" Then
Response.Write ("<script>alert('会员登陆失败!\n\n错误原因:会员帐号和密码未填。

');history.back();</script>")
Response.end
End If
if Instr(UserName,">")>0 or Instr(UserName,"<")>0 or
Instr(UserName,"=")>0 or Instr(UserName,"%")>0 or
Instr(UserName,chr(32))>0 or Instr(UserName,"?")>0 or
Instr(UserName,"&")>0 or Instr(UserName,";")>0 or
Instr(UserName,",")>0 or Instr(UserName,"'")>0 or
Instr(UserName,chr(34))>0 or Instr(UserName,chr(9))>0 or Instr(UserName,"")>0 or Instr(UserName,"$")>0 then
Response.Write ("<script>alert('会员登陆失败!\n\n错误原因:会员含有非法字符!');history.back();</script>")
Response.end
else
UserName=Trim(UserName)
end if
set rs=server.createobject("adodb.recordset")
sql="select * from [user] where UserName='"&UserName&"'" rs.open sql,conn,1,3
if rs.eof then
Response.Write ("<script>alert('会员登陆失败!\n\n错误原因:会员帐号错误。

');history.back();</script>")
Response.end
else
if rs("PassWord")<>PassWord then
rs.close
set rs=nothing
Response.Write ("<script>alert('会员登陆失败!\n\n错误原因:会员密码错误。

');history.back();</script>")
Response.end
else
session("UserName")=UserName'登录成功传递一个session值以便以后调用用户相关
session.timeout=300
end if
end if
rs.close
set rs=nothing
CloseDatabase
%>。

合集下载

qq登录界面设计java程序

qq登录界面设计java程序
zhanghao.setBorder(BorderFactory.createMatteBorder(1, 1, 1, 1, Color.WHITE));
zhanghao.setFont(new Font("宋体",Font.PLAIN,13));
this.add(zhanghao);*/
// zhanghaowb = new JLabel(new ImageIcon("2.png"));
zidongdenglu = new JCheckBox("自动登录");
zidongdenglu.setBounds(200, 190, 100, 30);
this.add(zidongdenglu);
jizhumima = new JCheckBox("记住密码");
jizhumima.setBounds(100, 190, 100, 30);
} catch (InstantiationException e1) {
// TODO 自动生成 catch 块
e1.printStackTrace();
} catch (IllegalAccessException e1) {
// TODO 自动生成 catch 块
e1.printStackTrace();
QQLogin w = new QQLogin();
w.setVisible(true);
}
});*/
new QQLogin();
}
public void mouseClicked(MouseEvent e) {
// TODO 自动生成方法存根

Java实现QQ登陆

Java实现QQ登陆

Java实现QQ登陆图②:图③:好了,效果就是这样了,虽然实现了基本功能,但是还是不完美,比如说好友面板不能随着窗口改变大小而改变,不过应该已经可以解决了,只是还没实践,下面就发上源代码:一共有三个类:MemberModel.java //显示类QQ似好友标签信息的模板类;TestPane.java //添加多个模板的容器类;TestFrame.java //窗体类;核心部分是前面两个类,注意,第二个类的布局方式不能为空,否则不能是容器显示滚动条,这是实现这个面板功能的一个难题,因为我不怎么会使用其他的布局方式,就只经常用空布局,经过这次才知道,光用空布局是不行的,空布局的应用受到了太多的限制。

在TestPane.java中添加好友信息的方式应该是代码添加黑名单信息的方式,可在其他类中调用方法,传递参数(数组)过来,然后对信息模板进行初始化,还有面板上的信息模板从程序刚开始运行就生成了,只是设置了不可见,后点击相关分类标签后的可视与不可视是同理的,也就是说你有多少个好友就一直会有多少个JLabel存在你的面板上,只是你可能看不见他们,我感觉自己的实现方式不是很好。

还有在我所用的这种布局方式中,显示Label的宽度是一定的,我不知道怎么设置他的宽度和高度,所以通过在Label上添加了一个白色图标(185 X 60)来使Label变宽,然后再添加模板JPanel,如果网友们还有好的解决方法,希望不吝赐教。

下面是源码:MemberModel.java 的源代:package coolbaby6;import javax.swing.ImageIcon;import javax.swing.JPanel;import javax.swing.JButton;import java.awt.Color;import java.awt.Rectangle;import javax.swing.JLabel;import java.awt.Dimension;import java.awt.Font;public class MemberModel{private static final long serialVersionUID = 1L;public JButton jButton = null;//显示好友头像;public JPanel jPanel = new JPanel();//模板容器;private JLabel lb_nickName = null;//显示昵称;private int pic;private String nickname = null;private JLabel lb_mood = null;//显示心情;public MemberModel(int pic, String nickname, int len) {super();this.pic = pic;//头像编(有多种方法可以实现,这种最简单)this.nickname = nickname;//昵称;initialize();}private void initialize() {lb_mood = new JLabel();lb_mood.setBounds(new Rectangle(51, 30, 131, 20));lb_mood.setFont(new Font("Dialog", Font.PLAIN, 12));lb_mood.setText("世界上最遥远的距离不是生与死,而是我站在你面前你却不知道我爱你!");lb_mood.addMouseListener(new java.awt.event.MouseAdapter() {public void mouseEntered(java.awt.event.MouseEvent e) {exchangeEnter();lb_mood.setToolTipText(lb_mood.getText());}public void mouseExited(java.awt.event.MouseEvent e) {exchangeExited();}});lb_nickName = new JLabel();lb_nickName.setBounds(new Rectangle(52, 10, 80, 20));lb_nickName.setFont(new Font("Dialog", Font.BOLD, 14));lb_nickName.setText(nickname);jPanel.setSize(new Dimension(185, 60));jPanel.setLayout(null);jPanel.add(getJButton(), null);jPanel.add(lb_nickName, null);jPanel.add(lb_mood, null);jPanel.addMouseListener(new java.awt.event.MouseAdapter() {public void mouseExited(java.awt.event.MouseEvent e) {exchangeExited();//鼠标移出模板区,改变背景颜色;}public void mouseEntered(java.awt.event.MouseEvent e) {exchangeEnter();//鼠标移进模板区,改变背景颜色;}});}private void exchangeEnter() {jPanel.setBackground(new Color(192,224,248));}private void exchangeExited() {jPanel.setBackground(null);}private JButton getJButton() {if (jButton == null) {jButton = new JButton();jButton.setBounds(new Rectangle(8, 10, 40, 40));jButton.setBackground(new Color(236, 255, 236));jButton.setIcon(new ImageIcon("head/"+pic + ".jpg"));jButton.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseExited(java.awt.event.MouseEvent e) {exchangeExited();//鼠标移出模板区,改变背景颜色;}public void mouseEntered(java.awt.event.MouseEvent e) {exchangeEnter();//鼠标移进模板区,改变背景颜色;}});}return jButton;}}TestPane.java 的源代码:package coolbaby6;import javax.swing.BorderFactory;import javax.swing.JPanel;import javax.swing.JLabel;import javax.swing.BoxLayout;import javax.swing.ImageIcon;public class TestPane extends JPanel {private static final long serialVersionUID = 1L;private JLabel jLabel = null;private JLabel jLabel1 = null;private JLabel jLabel11 = null;private JLabel jLabel12 = null;private int clickF=0;private int clickB=0;public TestPane() {super();initialize();}private void initialize() {jLabel12 = new JLabel();jLabel12.setIcon(new ImageIcon("img/bg.jpg"));jLabel12.add(new MemberModel(3,"CoolBabY3",200).jPanel);jLabel12.setBorder(BorderFactory.createEmptyBorder(2, 2, 2, 2)); jLabel11 = new JLabel();jLabel11.setIcon(new ImageIcon("img/bg.jpg"));jLabel11.add(new MemberModel(2,"CoolBabY2",200).jPanel);jLabel11.setBorder(BorderFactory.createEmptyBorder(2, 2, 2, 2)); jLabel1 = new JLabel();jLabel1.setIcon(new ImageIcon("img/bg.jpg"));jLabel1.add(new MemberModel(1,"CoolBabY1",200).jPanel);jLabel1.setBorder(BorderFactory.createEmptyBorder(2, 2, 2, 2)); jLabel = new JLabel();jLabel.setText("我的好友");jLabel.setIcon(new ImageIcon("img/ico.jpg"));jLabel.setBorder(BorderFactory.createEmptyBorder(2, 2, 2, 2)); jLabel.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent e) {clickF+=1;if(clickF%2==1){jLabel1.setVisible(false);jLabel11.setVisible(false);jLabel12.setVisible(false);jLabel.setIcon(new ImageIcon("img/ico2.jpg"));update();}else{jLabel1.setVisible(true);jLabel11.setVisible(true);jLabel12.setVisible(true);jLabel.setIcon(new ImageIcon("img/ico.jpg"));update();}}});this.setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));this.setSize(200, 408);this.setLocation(20, 5);this.add(jLabel, null);this.add(jLabel1, null);this.add(jLabel11, null);this.add(jLabel12, null);addJLabel();}private void update(){//更新UI界面;this.updateUI();}private void clickBlack2(JLabel []jb){//点击标签,将后面的标签全部设为不可视; for(int i=1;i<jb.length;i++){try{jb[i].setVisible(false);}catch(Exception e){e.printStackTrace();}}update();}private void clickBlack(JLabel []jb){//点击标签,将后面的标签全部设为可视;for(int i=1;i<jb.length;i++){try{jb[i].setVisible(true);}catch(Exception e){e.printStackTrace();}}update();}private void addJLabel(){//添加黑名单的内容;final JLabel []jb=new JLabel[7];jb[0] = new JLabel();jb[0].setText("黑名单");jb[0].setIcon(new ImageIcon("img/ico2.jpg"));jb[0].setBorder(BorderFactory.createEmptyBorder(2, 2, 2, 2));jb[0].addMouseListener(new java.awt.event.MouseAdapter() {public void mouseClicked(java.awt.event.MouseEvent e) {clickB+=1;if(clickB%2==1){clickBlack(jb);jb[0].setIcon(new ImageIcon("img/ico.jpg"));}else{clickBlack2(jb);jb[0].setIcon(new ImageIcon("img/ico2.jpg"));}}});this.add(jb[0],null);for(int i=1;i<jb.length;i++){jb[i]=new JLabel();jb[i].setIcon(new ImageIcon("img/bg.jpg"));jb[i].setBorder(BorderFactory.createEmptyBorder(2, 2, 2, 2));jb[i].add(new MemberModel((i+3),"CoolBabY"+(i+3),200).jPanel);jb[i].setVisible(false);this.add(jb[i],null);}}TestFrame.java 的源代码:package coolbaby6;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.JScrollPane;import javax.swing.ScrollPaneConstants;import javax.swing.SwingUtilities;public class TestFrame {private JFrame jFrame = null;private JPanel jContentPane = null;private JScrollPane scrollPane=null;public static void main(String[] args) {SwingUtilities.invokeLater(new Runnable() {public void run() {TestFrame application = new TestFrame();application.getJFrame().setVisible(true);}});}private JFrame getJFrame() {if (jFrame == null) {jFrame = new JFrame();jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);jFrame.setSize(230, 700);jFrame.setTitle("模拟实现QQ面板功能");jFrame.setContentPane(getJContentPane());}return jFrame;}private JScrollPane getScrollPane(){//给添加好友的容器JPanel添加滚动条;if(scrollPane==null){scrollPane=new JScrollPane(new TestPane());scrollPane.setBounds(20,5, 190, 600);scrollPane.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLL BAR_NEVER );//不显示水平滚动条;return scrollPane;}private JPanel getJContentPane() {//实例化底层的容器JPanel;if (jContentPane == null) {jContentPane = new JPanel();jContentPane.setLayout(null);jContentPane.add(getScrollPane());}return jContentPane;}}能成功编译成功我的源代码的方略:①、建一个项目,按我的类名建3个类,将源代码拷贝进去;②、在项目根目录下建一个名为img的文件夹,将要用到的图片放进去。

qq源代码

qq源代码

UserHelper..cs类代码using System;using System.Collections.Generic;using System.Text;namespace MyQQ{//记录登录的用户Idclass UserHelper{public static int loginId; //登录的用户Id}}using System;using System.Collections.Generic;using ponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Data.SqlClient;namespace MyQQ{///<summary>///聊天窗体///</summary>public partial class ChatForm : Form{public int friendId; // 当前聊天的好友号码public string nickName; // 当前聊天的好友昵称public int faceId; // 当前聊天的好友头像Idpublic ChatForm(){InitializeComponent();}// 窗体加载时的动作private void ChatForm_Load(object sender, EventArgs e){// 设置窗体标题this.Text = string.Format("与{0}聊天中",nickName);// 设置窗体顶部显示的好友信息picFace.Image = ilFaces.Images[faceId];lblFriend.Text = string.Format("{0}({1})",nickName,friendId);// 读取所有的未读消息,显示在窗体中ShowMessage();}// 关闭窗体private void btnClose_Click(object sender, EventArgs e){this.Close();}// 发送消息private void btnSend_Click(object sender, EventArgs e){if (txtChat.Text.Trim() == "") // 不能发送空消息{MessageBox.Show("不能发送空消息!", "提示", MessageBoxButtons.OK, rmation);return;}else if (txtChat.Text.Trim().Length > 50){MessageBox.Show("消息内容过长,请分为几条发送!", "提示", MessageBoxButtons.OK, rmation);return;}else// 发送消息,写入数据库{// MessageTypeId:1-表示聊天消息,为简化操作没有读取数据表,到S2可以用常量或者枚举实现// MessageState:0-表示消息状态是未读int result = -1; // 表示操作数据库的结果string sql = string.Format("INSERT INTO Messages (FromUserId, ToUserId, Message, MessageTypeId,MessageState) VALUES ({0},{1},'{2}',{3},{4})",UserHelper.loginId, friendId, txtChat.Text.Trim(), 1, 0);try{// 执行命令SqlCommand command = new SqlCommand(sql, DBHelper.connection);DBHelper.connection.Open();result = command.ExecuteNonQuery();}catch (Exception ex){Console.WriteLine(ex.Message);}finally{DBHelper.connection.Close();}if (result != 1){MessageBox.Show("服务器出现意外错误!", "抱歉", MessageBoxButtons.OK, MessageBoxIcon.Error);}txtChat.Text = ""; // 输入消息清空this.Close();}}///<summary>///读取所有的未读消息,显示在窗体中///</summary>private void ShowMessage(){string messageIdsString = ""; // 消息的Id组成的字符串string message; // 消息内容string messageTime; // 消息发出的时间// 读取消息的SQL语句string sql = string.Format("SELECT Id, Message,MessageTime From Messages WHERE FromUserId={0} AND ToUserId={1} AND MessageTypeId=1 AND MessageState=0",friendId,UserHelper.loginId);try{SqlCommand command = new SqlCommand(sql, DBHelper.connection);DBHelper.connection.Open();SqlDataReader reader = command.ExecuteReader();// 循环将消息添加到窗体上while (reader.Read()){messageIdsString += Convert.ToString(reader["Id"]) + "_";message = Convert.ToString(reader["Message"]);messageTime = Convert.ToDateTime(reader["MessageTime"]).ToString(); // 转换为日期类型,告诉学员lblMessages.Text += string.Format("\n{0} {1}\n{2}",nickName,messageTime,message);}reader.Close();}catch (Exception ex){Console.WriteLine(ex.Message);}finally{DBHelper.connection.Close();}// 把显示出的消息置为已读if (messageIdsString.Length > 1){messageIdsString.Remove(messageIdsString.Length - 1);SetMessageRead(messageIdsString, '_');}}///<summary>///把显示出的消息置为已读///</summary>private void SetMessageRead(string messageIdsString, char separator){string[] messageIds = messageIdsString.Split(separator); // 分割出每个消息Idstring sql = "Update Messages SET MessageState=1 WHERE Id="; // 更新状态的SQL语句的固定部分string updateSql; // 执行的SQL语句try{SqlCommand command = new SqlCommand(); // 创建Command对象command.Connection = DBHelper.connection; // 指定数据库连接DBHelper.connection.Open(); // 打开数据库连接foreach (string id in messageIds){if (id != ""){updateSql = sql + id; // 补充完整的SQL语句 mandText = updateSql; // 指定要执行的SQL语句int result = command.ExecuteNonQuery(); // 执行命令}}}catch (Exception ex){Console.WriteLine(ex.Message);}finally{DBHelper.connection.Close();}}ChatForm.cs代码using System;using System.Collections.Generic;using ponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Data.SqlClient;namespace MyQQ{///<summary>///聊天窗体///</summary>public partial class ChatForm : Form{public int friendId; // 当前聊天的好友号码public string nickName; // 当前聊天的好友昵称public int faceId; // 当前聊天的好友头像Idpublic ChatForm(){InitializeComponent();}// 窗体加载时的动作private void ChatForm_Load(object sender, EventArgs e){// 设置窗体标题this.Text = string.Format("与{0}聊天中",nickName);// 设置窗体顶部显示的好友信息picFace.Image = ilFaces.Images[faceId];lblFriend.Text = string.Format("{0}({1})",nickName,friendId);// 读取所有的未读消息,显示在窗体中ShowMessage();}// 关闭窗体private void btnClose_Click(object sender, EventArgs e){this.Close();}// 发送消息private void btnSend_Click(object sender, EventArgs e){if (txtChat.Text.Trim() == "") // 不能发送空消息{MessageBox.Show("不能发送空消息!", "提示", MessageBoxButtons.OK, rmation);return;}else if (txtChat.Text.Trim().Length > 50){MessageBox.Show("消息内容过长,请分为几条发送!", "提示", MessageBoxButtons.OK, rmation);return;}else// 发送消息,写入数据库{// MessageTypeId:1-表示聊天消息,为简化操作没有读取数据表,到S2可以用常量或者枚举实现// MessageState:0-表示消息状态是未读int result = -1; // 表示操作数据库的结果string sql = string.Format("INSERT INTO Messages (FromUserId, ToUserId, Message, MessageTypeId, MessageState) VALUES ({0},{1},'{2}',{3},{4})",UserHelper.loginId, friendId, txtChat.Text.Trim(), 1, 0);try{// 执行命令SqlCommand command = new SqlCommand(sql, DBHelper.connection);DBHelper.connection.Open();result = command.ExecuteNonQuery();}catch (Exception ex){Console.WriteLine(ex.Message);}finally{DBHelper.connection.Close();}if (result != 1){MessageBox.Show("服务器出现意外错误!", "抱歉", MessageBoxButtons.OK, MessageBoxIcon.Error);}txtChat.Text = ""; // 输入消息清空this.Close();}}///<summary>///读取所有的未读消息,显示在窗体中///</summary>private void ShowMessage(){string messageIdsString = ""; // 消息的Id组成的字符串string message; // 消息内容string messageTime; // 消息发出的时间// 读取消息的SQL语句string sql = string.Format("SELECT Id, Message,MessageTime From Messages WHERE FromUserId={0} AND ToUserId={1} AND MessageTypeId=1 AND MessageState=0",friendId,UserHelper.loginId);try{SqlCommand command = new SqlCommand(sql, DBHelper.connection);DBHelper.connection.Open();SqlDataReader reader = command.ExecuteReader();// 循环将消息添加到窗体上while (reader.Read()){messageIdsString += Convert.ToString(reader["Id"]) + "_";message = Convert.ToString(reader["Message"]);messageTime = Convert.ToDateTime(reader["MessageTime"]).ToString(); // 转换为日期类型,告诉学员lblMessages.Text += string.Format("\n{0} {1}\n{2}",nickName,messageTime,message);}reader.Close();}catch (Exception ex){Console.WriteLine(ex.Message);}finally{DBHelper.connection.Close();}// 把显示出的消息置为已读if (messageIdsString.Length > 1){messageIdsString.Remove(messageIdsString.Length - 1);SetMessageRead(messageIdsString, '_');}}///<summary>///把显示出的消息置为已读///</summary>private void SetMessageRead(string messageIdsString, char separator){string[] messageIds = messageIdsString.Split(separator); // 分割出每个消息Idstring sql = "Update Messages SET MessageState=1 WHERE Id="; // 更新状态的SQL语句的固定部分string updateSql; // 执行的SQL语句try{SqlCommand command = new SqlCommand(); // 创建Command对象command.Connection = DBHelper.connection; // 指定数据库连接DBHelper.connection.Open(); // 打开数据库连接foreach (string id in messageIds){if (id != ""){updateSql = sql + id; // 补充完整的SQL语句 mandText = updateSql; // 指定要执行的SQL语句int result = command.ExecuteNonQuery(); // 执行命令}}}catch (Exception ex){Console.WriteLine(ex.Message);}finally{DBHelper.connection.Close();}}private void lblMessages_Click(object sender, EventArgs e){}}}DBHelper.cs类代码using System;using System.Collections.Generic;using System.Text;using System.Data.SqlClient;namespace MyQQ{// 数据库帮助类,维护数据库连接字符串和数据库连接对象class DBHelper{private static string connString = "Data Source=.;database=MyQQ;integrated security=sspi";public static SqlConnection connection = new SqlConnection(connString);}}using System;using System.Collections.Generic;using ponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;namespace MyQQ{///<summary>///头像选择窗体///</summary>public partial class FacesForm : Form{public PersonalInfoForm personalInfoForm; // 个人信息窗体public FacesForm(){InitializeComponent();}1.FacesForm.cs代码private void FacesForm_Load(object sender, EventArgs e){for (int i = 0; i < ilFaces.Images.Count; i++){lvFaces.Items.Add(i.ToString());lvFaces.Items[i].ImageIndex = i;}}// 确定选择头像private void btnOK_Click(object sender, EventArgs e){if (lvFaces.SelectedItems.Count == 0){MessageBox.Show("请选择一个头像!", "提示", MessageBoxButtons.OK, rmation);}else{int faceId = lvFaces.SelectedItems[0].ImageIndex; // 获得当前选中的头像的索引personalInfoForm.ShowFace(faceId); // 设置个人信息窗体中显示的头像this.Close();}}// 双击时选择头像private void lvIcons_MouseDoubleClick(object sender, MouseEventArgs e){int faceId = lvFaces.SelectedItems[0].ImageIndex; // 获得当前选中的头像的索引 personalInfoForm.ShowFace(faceId); // 设置个人信息窗体中显示的头像this.Close();}// 关闭窗体private void btnCancel_Click(object sender, EventArgs e){this.Close();}}}LoginForm.csusing System;using System.Collections.Generic;using ponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Data.SqlClient;namespace MyQQ{///<summary>///登录窗体///</summary>public partial class LoginForm : Form{public LoginForm(){InitializeComponent();}// 取消按钮的事件处理private void btnCancel_Click(object sender, EventArgs e){Application.Exit();}// 打开申请号码界面private void llbl_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) {RegisterForm registerForm = new RegisterForm();registerForm.Show();}// 登录按钮事件处理private void btnLogin_Click(object sender, EventArgs e){bool error = false; // 标志在执行数据库操作的过程中是否出错// 如果输入验证成功,就验证身份,并转到相应的窗体if (ValidateInput()){int num = 0; // 数据库操作结果try{// 查询用的sql语句string sql = string.Format("SELECT COUNT(*) FROM Users WHERE Id={0} AND LoginPwd = '{1}'",int.Parse(txtLoginId.Text.Trim()), txtLoginPwd.Text.Trim());// 创建Command 对象SqlCommand command = new SqlCommand(sql, DBHelper.connection);DBHelper.connection.Open(); // 打开数据库连接num = Convert.ToInt32(command.ExecuteScalar());}catch (Exception ex){error = true;Console.WriteLine(ex.Message);}finally{DBHelper.connection.Close(); // 关闭数据库连接}if (!error && (num == 1)) // 验证通过{// 设置登录的用户号码UserHelper.loginId = int.Parse(txtLoginId.Text.Trim());// 创建主窗体MainForm mainForm = new MainForm();mainForm.Show(); // 显示窗体this.Visible = false; // 当前窗体不可见}else{MessageBox.Show("输入的用户名或密码有误!", "登录提示", MessageBoxButtons.OK, MessageBoxIcon.Error);}}}// 忘记密码标签private void llblFogetPwd_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) {MessageBox.Show("该功能尚未开通!","提示",MessageBoxButtons.OK,rmation);}// 用户输入验证private bool ValidateInput(){// 验证用户输入if (txtLoginId.Text.Trim() == ""){MessageBox.Show("请输入登录的号码", "登录提示", MessageBoxButtons.OK, rmation);txtLoginId.Focus();return false;}else if (txtLoginPwd.Text.Trim() == ""){MessageBox.Show("请输入密码", "登录提示", MessageBoxButtons.OK, rmation);txtLoginPwd.Focus();return false;}return true;}}}MainForm.csusing System;using System.Collections.Generic;using ponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using Aptech.UI;using System.Data.SqlClient;using System.Media;namespace MyQQ{///<summary>///登录后的主窗体///</summary>public partial class MainForm : Form{int fromUserId; // 消息的发起者int friendFaceId; // 发消息的好友的头像Idint messageImageIndex = 0; // 工具栏中的消息图标的索引public MainForm(){InitializeComponent();}// 窗体加载时发生private void MainForm_Load(object sender, EventArgs e) {// 工具栏的消息图标tsbtnMessageReading.Image = ilMessage.Images[0];// 显示个人的信息ShowSelfInfo();// 添加SideBar 的两个组sbFriends.AddGroup("我的好友");sbFriends.AddGroup("陌生人");// 向我的好友组中添加我的好友列表ShowFriendList();}// 窗体关闭后,退出应用程序private void MainForm_FormClosed(object sender, FormClosedEventArgs e) {Application.Exit();}// 显示个人信息窗体private void tsbtnPersonalInfo_Click(object sender, EventArgs e){PersonalInfoForm personalInfoForm = new PersonalInfoForm();personalInfoForm.mainForm = this; // 将当前窗体本身传给个人信息窗体 personalInfoForm.Show();}// 显示查找好友窗体private void tsbtnSearchFriend_Click(object sender, EventArgs e){SearchFriendForm searchFriendForm = new SearchFriendForm();searchFriendForm.Show();}// 双击一项,弹出聊天窗体private void sbFriends_ItemDoubleClick(SbItemEventArgs e){// 消息timer停止运行if (tmrChatRequest.Enabled == true){tmrChatRequest.Stop();e.Item.ImageIndex = this.friendFaceId;}// 显示聊天窗体ChatForm chatForm = new ChatForm();chatForm.friendId = Convert.ToInt32(e.Item.Tag); // 号码chatForm.nickName = e.Item.Text; // 昵称chatForm.faceId = e.Item.ImageIndex; // 头像chatForm.Show();}// 点击刷新好友列表private void tsbtnUpdateFriendList_Click(object sender, EventArgs e){ShowFriendList();}// 定时扫描数据库,找到未读消息private void tmrMessage_Tick(object sender, EventArgs e){ShowFriendList(); // 刷新好友列表int messageTypeId = 1; // 消息类型int messageState = 1; // 消息状态// 找出未读消息对应的好友Idstring sql = string.Format("SELECT Top 1 FromUserId, MessageTypeId, MessageState FROM Messages WHERE ToUserId={0} AND MessageState=0", UserHelper.loginId);SqlCommand command;// 消息有两种类型:聊天消息、添加好友消息try{command = new SqlCommand(sql, DBHelper.connection);DBHelper.connection.Open();SqlDataReader dataReader = command.ExecuteReader();// 循环读出一个未读消息if (dataReader.Read()){this.fromUserId = (int)dataReader["FromUserId"];messageTypeId = (int)dataReader["MessageTypeId"];messageState = (int)dataReader["MessageState"];}dataReader.Close();}catch (Exception ex){Console.WriteLine(ex.Message);}finally{DBHelper.connection.Close();}// 判断消息类型,如果是添加好友消息,就启动喇叭timer,让小喇叭闪烁if (messageTypeId == 2 && messageState == 0){SoundPlayer player = new SoundPlayer("system.wav");player.Play();tmrAddFriend.Start();}// 如果是聊天消息,就启动聊天timer,让好友头像闪烁else if (messageTypeId == 1 && messageState == 0){// 获得发消息的人的头像Idsql = "SELECT FaceId FROM Users WHERE Id=" + this.fromUserId;try{command = new SqlCommand(sql, DBHelper.connection);DBHelper.connection.Open();this.friendFaceId = Convert.ToInt32(command.ExecuteScalar()); // 设置发消息的好友的头像索引}catch (Exception ex){Console.WriteLine(ex.Message);}finally{DBHelper.connection.Close();}// 如果发消息的人没有在列表中就添加到陌生人列表中if (!HasShowUser(fromUserId)){UpdateStranger(fromUserId);}SoundPlayer player = new SoundPlayer("msg.wav");player.Play();tmrChatRequest.Start(); // 启动闪烁头像定时器}}// 控制喇叭闪烁private void tmrAddFriend_Tick(object sender, EventArgs e){// 反复修改它的图像messageImageIndex = messageImageIndex == 0 ? 1:0;tsbtnMessageReading.Image = ilMessage.Images[messageImageIndex];}// 单击时显示请求好友消息窗体private void tsbtnMessageReading_Click(object sender, EventArgs e){tmrAddFriend.Stop(); // 消息timer停止运行// 图片恢复正常messageImageIndex = 0;tsbtnMessageReading.Image = ilMessage.Images[messageImageIndex];// 显示系统消息窗体RequestForm requestForm = new RequestForm();requestForm.Show();}// 让相应的好友头像闪烁private void tmrChatRequest_Tick(object sender, EventArgs e){// 循环好友列表两个组中的每个item,找到发消息的好友,让他的头像闪烁for (int i = 0; i < 2; i++){for (int j = 0; j < sbFriends.Groups[i].Items.Count; j++){if(Convert.ToInt32(sbFriends.Groups[i].Items[j].Tag) == this.fromUserId) {if (sbFriends.Groups[i].Items[j].ImageIndex < 100){sbFriends.Groups[i].Items[j].ImageIndex = 100;// 索引为的图片是一个空白图片}else{sbFriends.Groups[i].Items[j].ImageIndex = this.friendFaceId;}sbFriends.Invalidate(); // 重新绘制,只要告诉学生需要这句话才能正常闪烁头像就行}}}}// 显示右键菜单时,控制哪些菜单不可见private void cmsFriendList_Opening(object sender, CancelEventArgs e){// 如果没有选中的项if (sbFriends.SeletedItem == null){tsmiDelete.Visible = false;}else{tsmiDelete.Visible = true;}// 如果选中的是陌生人,显示加为好友菜单if (sbFriends.SeletedItem != null && sbFriends.SeletedItem.Parent == sbFriends.Groups[1]){tsmiAddFriend.Visible = true;}else{tsmiAddFriend.Visible = false;}}// 显示大、小头像视图切换private void tsmiView_Click(object sender, EventArgs e){if (sbFriends.View == rgeIcon){sbFriends.View = SbView.SmallIcon;tsmiView.Text = "显示大头像";}else if (sbFriends.View == SbView.SmallIcon){sbFriends.View = rgeIcon;tsmiView.Text = "显示小头像";}}// 删除好友private void tsmiDelete_Click(object sender, EventArgs e){DialogResult result; // 对话框结果int deleteResult = 0; // 操作结果if (sbFriends.SeletedItem != null){result = MessageBox.Show("确实要删除该好友吗?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question);if (result == DialogResult.Yes) // 确认删除{if (sbFriends.VisibleGroup == sbFriends.Groups[0]){string sql = string.Format("DELETE FROM Friends WHERE HostId={0} AND FriendId={1}",UserHelper.loginId, Convert.ToInt32(sbFriends.SeletedItem.Tag));try{SqlCommand command = new SqlCommand(sql, DBHelper.connection);DBHelper.connection.Open();deleteResult = command.ExecuteNonQuery();}catch (Exception ex){Console.WriteLine(ex.Message);}finally{DBHelper.connection.Close();}if (deleteResult == 1){MessageBox.Show("好友已删除", "提示", MessageBoxButtons.OK, rmation);sbFriends.SeletedItem.Parent.Items.Remove(sbFriends.SeletedItem);}}else{MessageBox.Show("好友已删除", "提示", MessageBoxButtons.OK, rmation);sbFriends.SeletedItem.Parent.Items.Remove(sbFriends.SeletedItem);}}}}// 将选中的人加为好友private void tsmiAddFriend_Click(object sender, EventArgs e){int result = 0; // 操作结果string sql = string.Format("INSERT INTO Friends (HostId, FriendId) VALUES({0},{1})",UserHelper.loginId, Convert.ToInt32(sbFriends.SeletedItem.Tag));try{SqlCommand command = new SqlCommand(sql, DBHelper.connection);DBHelper.connection.Open();result = command.ExecuteNonQuery();}catch (Exception ex){Console.WriteLine(ex.Message);}finally{DBHelper.connection.Close();}if (result == 1){MessageBox.Show("添加成功!", "提示", MessageBoxButtons.OK, rmation);sbFriends.SeletedItem.Parent.Items.Remove(sbFriends.SeletedItem);ShowFriendList(); // 更新好友列表}else{MessageBox.Show("添加失败,请稍候再试!", "提示", MessageBoxButtons.OK, rmation);}}// 退出private void tsbtnExit_Click(object sender, EventArgs e){DialogResult result = MessageBox.Show("确实要退出吗?", "操作确认", MessageBoxButtons.YesNo, MessageBoxIcon.Question);if (result == DialogResult.Yes){Application.Exit();}}// 可见组发生变化时,发出声音private void sbFriends_VisibleGroupChanged(SbGroupEventArgs e){SoundPlayer player = new SoundPlayer("folder.wav");player.Play();}///<summary>///登录后显示个人的信息///</summary>public void ShowSelfInfo(){string nickName = ""; // 昵称int faceId = 0; // 头像索引bool error = false; // 标识是否出现错误// 取得当前用户的昵称、头像string sql = string.Format("SELECT NickName, FaceId FROM Users WHERE Id={0}",UserHelper.loginId);try{// 查询SqlCommand command = new SqlCommand(sql, DBHelper.connection);DBHelper.connection.Open();SqlDataReader dataReader = command.ExecuteReader();if (dataReader.Read()){if (!(dataReader["NickName"] is DBNull)) // 判断数据库类型是否为空 {nickName = Convert.ToString(dataReader["NickName"]);}faceId = Convert.ToInt32(dataReader["FaceId"]);}dataReader.Close();}catch (Exception ex){error = true;Console.WriteLine(ex.Message);}finally{DBHelper.connection.Close();}// 根据操作数据库结果进行不同的操作if (error){MessageBox.Show("服务器请求失败!请重新登录!", "意外错误", MessageBoxButtons.OK, MessageBoxIcon.Error);Application.Exit();}else{// 在窗体标题显示登录的昵称、号码this.Text = UserHelper.loginId.ToString();this.picFace.Image = ilFaces.Images[faceId];this.lblLoginId.Text = string.Format("{0}({1})", nickName,UserHelper.loginId.ToString());}}///<summary>///向我的好友组中添加我的好友列表///</summary>private void ShowFriendList(){// 清空原来的列表sbFriends.Groups[0].Items.Clear();bool error = false; // 标识数据库是否出错// 查找有哪些好友string sql = string.Format("SELECT FriendId,NickName,FaceId FROM Users,Friends WHERE Friends.HostId={0} AND Users.Id=Friends.FriendId",UserHelper.loginId);try{// 执行查询SqlCommand command = new SqlCommand(sql, DBHelper.connection);DBHelper.connection.Open();SqlDataReader dataReader = command.ExecuteReader();// 循环添加好友列表while (dataReader.Read()){// 创建一个SideBar项SbItem item = new SbItem((string)dataReader["NickName"], (int)dataReader["FaceId"]);item.Tag = (int)dataReader["FriendId"]; // 将号码放在Tag属性中// SideBar中的组可以通过数组的方式访问,按照添加的顺序索引从开始// Groups[0]表示SideBar中的第一个组,也就是“我的好友”组sbFriends.Groups[0].Items.Add(item); // 向SideBar的“我的好友”组中添加项 }dataReader.Close();}catch (Exception ex){error = true;Console.WriteLine(ex.Message);}finally{DBHelper.connection.Close();}// 出错了if (error){MessageBox.Show("服务器发生意外错误!请尝试重新登录", "抱歉", MessageBoxButtons.OK, MessageBoxIcon.Error);Application.Exit();}}///<summary>///判断发消息的人是否在列表中///</summary>private bool HasShowUser(int loginId){bool find = false; // 表示是否在当前显示出的用户列表中找到了该用户// 循环SideBar 中的个组,寻找发消息的人是否在列表中for (int i = 0; i < 2; i++){for (int j = 0; j < sbFriends.Groups[i].Items.Count; j++){if (Convert.ToInt32(sbFriends.Groups[i].Items[j].Tag) == loginId){find = true;}}}return find;}///<summary>///更新陌生人列表///</summary>private void UpdateStranger(int loginId){// 选出这个人的基本信息string sql = "SELECT NickName, FaceId FROM Users WHERE Id=" + loginId;bool error = false; // 用来标识是否出现错误try{SqlCommand command = new SqlCommand(sql, DBHelper.connection);DBHelper.connection.Open();SqlDataReader dataReader = command.ExecuteReader(); // 查询if (dataReader.Read()){SbItem item = new SbItem((string)dataReader["NickName"],(int)dataReader["FaceId"]);item.Tag = this.fromUserId; // 将Id记录在Tag属性中sbFriends.Groups[1].Items.Add(item); // 向陌生人组中添加项}sbFriends.VisibleGroup = sbFriends.Groups[1]; // 设定陌生人组为可见组 }catch (Exception ex){error = true;Console.WriteLine(ex.Message);}finally{DBHelper.connection.Close();}// 出错了if (error){MessageBox.Show("服务器出现意外错误!", "抱歉", MessageBoxButtons.OK, MessageBoxIcon.Error);}}}}(资料素材和资料部分来自网络,供参考。

qq 登录界面代码

qq 登录界面代码
dialog.getContentPane().add(IdentifyingCodeLabel);
dialog.getContentPane().add(b5);
wordDialogInfoLabel.setBounds(10, 10, 180, 60);
wordIdentifyingCodeLabel.setBounds(40, 100, 60, 20);
super.paintComponent(g);
ImageIcon icon = new ImageIcon("image\\middlebg.jpg");
g.drawImage(icon.getImage(), 0, 0, null);
}
};
m2=new JPanel(){ //单击多账户按钮覆盖默认panel
IdentifyingCodeLabel.setBounds(150, 100, 30, 20);
IdentifyingCodeTextField.setBounds(100, 100, 30, 20);
b5.setBounds(60, 140, 66, 26);
p1 = new JPanel();
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.util.Hasandom;
public class TestTencent extends JFrame implements ActionListener {

QQ登录界面java代码

QQ登录界面java代码
}
}
jp=newJPanel();
jp.setLayout(null);
jp_jlb1=newJLabel(newImageIcon("image/qqtou.gif"));
jp_jlb1.setBounds(18, 10, 85, 85);//设置标签位置前提是要空布局
jp_jtf=newJTextField("QQ号码/手机/邮箱");
this.add(jp,BorderLayout.CENTER);//放到中部
this.setIconImage(newImageIcon("image/qq.gif").getImage());//设置窗口上的qq小图片
this.setResizable(false);//不允许放大,改变窗口大小等
JFrame jf =newJFrame(title);
Containercontainer= jf.getContentPane();
lb1=newJLabel(newImageIcon("image/tou.gif"));
lb2=newJLabel(newImageIcon("image/qqtou.gif"));
this.setSize(380,275);
this.setLocation(500,200);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
}
jp_jb2.setFont(f1);
jp_jb2.setBounds(95, 120, 65, 21);
jp_jb3=newJButton("登录");

qq登陆错误,qq错误代码总汇介绍-电脑资料

qq登陆错误,qq错误代码总汇介绍-电脑资料

qq登陆错误,qq错误代码总汇介绍-电脑资料我们在登录QQ或使用QQ时,常常会出现QQ错误码:0X00000001这是什么原因呢,下面小编就为大家介绍其原因以及解决方法,。

方法一:打开qq登陆界面,在账户下拉框中选择出现问题的QQ 号码,单击“×”删除账户信息,出现下面的对话框,选择“删除此帐号的所有记录文件”,然后重新登录QQ。

提示:如果想保留聊天记录或QQ自定义表情,先进入QQ安装目录位置,找到users文件夹,在里面有一个以QQ号码命名的文件夹,把这个文件夹复制、粘贴到其余盘,等QQ正常使用之后,可以导入聊天记录和QQ表情。

方法二:qq错误码0x00000001,通过DOS命令解决。

单击开始——运行,输入cmd,打开命令提示符窗口,键入:for %1 in (%windir%\system32\*.dll) do regsvr32.exe /s %1,回车。

如果是错误码0X00000002,单击开始——运行,在运行框输入:regsvr32 %WINDIR%\system32\msxml3.dll。

如果提示失败,可以从别的电脑复制msxml3.dll 到windows\system32文件夹下,再次运行regsvr32 %WINDIR%\system32\msxml3.dll,电脑资料《qq登陆错误,qq错误代码总汇介绍》(https://www.)。

另外,有时出现错误码0x00000001,是腾讯服务器出现了问题所造成,这个就是耐心等待恢复。

除了上面这一个qq错误码代码以外,还有比如qq错误码0x00080008,qq错误码0x0000001,qq错误码0x00000002,qq 错误码0x00080001等等。

总之都是在使用过程,或者安装其余软件发生冲突等等各种各样的原因,有个最直接解决QQ错误码的方法,就是把QQ卸载,重装。

卸载的时候一定要彻底,最好用360安全卫士——软件管家——软件卸载。

android实现QQ登录界面(大学作业一)

android实现QQ登录界⾯(⼤学作业⼀)实验项QQ登录界⾯⽬:实验地躬⾏楼718实验时间:2018.10.13点:⼀、实验⽬的:1.掌握Android中布局的概念和⽤法2.熟练掌握Android中Button、ImageView、EditText以及Toast的基本使⽤。

3. 熟练掌握偏好设置的⽤法⼆、实验内容与要求1.完成如下所⽰的QQ登录界⾯2.功能需求:2.1 界⾯需要做简单屏幕适配(weight属性)2.2 ⽤户名明⽂显⽰且只能是数字2.3 密码必须是密⽂显⽰,字符数字都可以。

2.4 ⽤户名或密码空,点击登录提⽰"⽤户名密码不能为空"2.5 ⽤户名和密码为指定时,点击按钮提⽰登录成功。

2.6 登录成功后,将⽤户名和密码保存在偏好设置中,2.7 退出QQ再次打开,记住⽤户名密码并显⽰出来三、实验步骤和结果:⽤户名是123,密码是password输⼊验证成功后即可显⽰登陆成功提⽰,然后保存到偏好设置中,以后开启⽤户名和密码就会显⽰在⽂本框内main_activity.xml:<android.support.constraint.ConstraintLayoutxmlns:android="/apk/res/android"xmlns:app="/apk/res-auto"xmlns:tools="/tools"android:layout_width="match_parent"android:layout_height="match_parent"tools:context=".MainActivity"><LinearLayout xmlns:tools="/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:background="@drawable/background_gradient"android:orientation="vertical"><ImageViewandroid:id="@+id/imageView1"android:layout_width="160dp"android:layout_height="0dp"android:layout_gravity="center_horizontal"android:layout_marginTop="10dp"android:layout_marginBottom="5dp" android:layout_weight="1"android:src="@drawable/logo" /><LinearLayoutandroid:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1"android:orientation="vertical"><EditTextandroid:id="@+id/username" android:layout_width="match_parent" android:layout_height="40dp" android:layout_below="@id/imageView1" android:layout_marginTop="5dp" android:background="#ffffff" android:hint="QQ/⼿机号"android:inputType="number" android:paddingLeft="12dp" android:textColor="#000000" /><EditTextandroid:id="@+id/pwd"android:layout_width="match_parent" android:layout_height="40dp" android:layout_below="@id/username" android:layout_marginTop="5dp" android:background="#ffffff" android:hint="密码"android:inputType="textPassword" android:paddingLeft="12dp" android:textColor="#000000" /><Buttonandroid:id="@+id/login"android:layout_width="match_parent" android:layout_height="40dp"android:layout_below="@id/pwd" android:layout_marginLeft="20dp"android:layout_marginTop="20dp" android:layout_marginRight="20dp" android:background="@drawable/shape" android:gravity="center"android:text="登录"android:textColor="#F9FAFB" /></LinearLayout></LinearLayout><LinearLayoutandroid:layout_width="match_parent"android:layout_height="0dp"android:layout_weight="1"android:padding="10dp"android:gravity="bottom"><TextViewandroid:id="@+id/textView2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:gravity="center"android:text="⽆法登录"android:textColor="#0EB1EF" /><TextViewandroid:id="@+id/textView3"android:layout_width="match_parent"android:layout_height="wrap_content"android:gravity="right"android:text="新⽤户"android:textColor="#0EB1EF" /></LinearLayout></LinearLayout></android.support.constraint.ConstraintLayout> MainActivity.java主要代码:package com.lgqchinese.homework;import …public class MainActivity extends AppCompatActivity { private SharedPreferences sp;private SharedPreferences.Editor editor;private EditText userEdit;private EditText passEdit;private Button login;String userNameValue;String passwordValue;@Overrideprotected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(yout.activity_main);viewInfo();/*//隐藏titleif (getSupportActionBar() != null){ getSupportActionBar().hide();}*/}*/sp = getSharedPreferences("userInfo", 0);String name = sp.getString("USER_NAME", "");String pass = sp.getString("PASSWORD", "");userEdit.setText(name);passEdit.setText(pass);login.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View arg0) {userNameValue = userEdit.getText().toString();passwordValue = passEdit.getText().toString();//⽤户名或密码空,点击登录提⽰"⽤户名密码不能为空"if(userNameValue.equals("")||passwordValue.equals("")){Toast.makeText(MainActivity.this, "⽤户名或密码不能为空", Toast.LENGTH_SHORT).show(); }else {if (userNameValue.equals("123")&&passwordValue.equals("password")){//⽤户名和密码为指定时,点击按钮提⽰登录成功。

vb qq

实验四QQ登录应用程序
Combo1中选择收入标准,Text1中显示相应的税率;组合框中的数据项可在属
图1 QQ登录界面图2 QQ好友展示界面图3 好友聊天界面
登录界面好友展示界面个人资料聊天界面
作品功能介绍:
1.qq登陆界面功能,QQ图片展示QQ账号密码输入,密码字符为*登录按钮,检测账号密码正确进入好友展示界面。

具备查杀木马功能(可选如果账号输入有误,给出msgbox消息框。

7. 添加combo 控件,实现登录状态(在线、隐身、离开)选择,使用public变量实现好友状态显示
自己的在线状态颜色随机变幻;换肤功能,单击“换肤”,窗体背景色变换颜色;
QQ聊天界面分组显示成员头像;单击个人头像显示个人资料;
个人资料功能,显示跟人资料;计算工资所得税;你到已经快乐生活了多少天,其中学习用了多少小时,睡觉用了多少小时;
聊天窗口功能,复制,粘贴,剪切。

发送消息;改变字体颜色;。

SP课程设计QQ登陆系统含源代码

目录1 前言 ........................................................................................................................... 页码问题提出 ........................................................ 页码研究意义 ........................................................ 页码2 系统需求分析 ............................................................................................................. 页码系统功能分析.............................................................................................................. 页码系统功能模块设计...................................................................................................... 页码3 数据库的概念结构设计............................................ 页码数据抽象 ......................................................... 页码设计全局概念模式 ................................................. 页码4 数据库的逻辑设计................................................. 页码形成初始的关系模式 ............................................... 页码关系模式的规范化处理.............................................. 页码5系统的实现与调试 ................................................. 页码6 总结............................................................... 页码参考文献 .......................................................................................................................... 页码1 前言问题提出随着嵌入式的发展,近年来,嵌入式在社会发展中占据着越来越重要的地位。

QQ仿真登录

QQ仿真登录QQ仿真登录2. [代码]Swing写的QQ登录界面跳至[2] [全屏预览]view sourceprint?001importjava.awt.Container;002import java.awt.Image;003import java.awt.event.ActionEvent;004importjava.awt.event.ActionListener;005 006importjavax.swing.ImageIcon;007importjavax.swing.JButton;008importjavax.swing.JCheckBox;009importjavax.swing.JComboBox;010importjavax.swing.JFrame;011import javax.swing.JLabel;012import javax.swing.JOptionPane;013importjavax.swing.JPasswordField;014importjavax.swing.JTextField;015 016/**017 * 仿QQ登录界面018 *019 * @author jiang020 */021public class GUIQQ extends JFrame {022 // 用户名023 private JTextField username;024 // 密码025 private JPasswordField password;026 // 小容器027 private JLabel jl1;028 private JLabel jl2;029 private JLabel jl3;030 private JLabel jl4;031 032 // 小按钮033 private JButtonbu1;034 private JButton bu2;035 private JButtonbu3;036 037 // 复选框038 private JCheckBox jc1;039 private JCheckBox jc2;040 041 // 列表框042 private JComboBox jcb;043 044 /*045 * 构造方法046*/047 public GUIQQ() {048 // 设置窗口标题049 this.setTitle("QQ2012正式版");050 // 窗体组件初始化051 init();052this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);053 // 设置布局方式为绝对定位054this.setLayout(null);055 056this.setBounds(0, 0, 355, 265);057 // 设置窗体的标题图标058 Image image = newImageIcon("e:/a.gif").getImage();059this.setIconImage(image);060 061 // 窗体大小不能改变062 this.setResizable(false);063064 // 居中显示065this.setLocationRelativeTo(null);066 067 // 窗体可见068 this.setVisible(true);069 }070 071 /*072 * 初始化方法073 */074 public void init() {075// 创建一个容器076 Container con =this.getContentPane();077 jl1 = new JLabel();078// 设置背景图片079 Image image1 = new ImageIcon("e:/background.jpg").getImage();080jl1.setIcon(new ImageIcon(image1));081jl1.setBounds(0, 0, 355, 265);082 083 // QQ 登录头像设定084 jl2 = new JLabel();085Image image2 = new ImageIcon("e:/a.gif").getImage();086jl2.setIcon(new ImageIcon(image2));087jl2.setBounds(40, 95, 50, 60);088 089 // 用户号码登录输入框090 username = new JTextField();091 username.setBounds(100, 100, 150, 20);092 // 用户号码登录输入框旁边的文字093 jl3 = new JLabel("注册账号");094 jl3.setBounds(260, 100, 70, 20);095 096 // 密码输入框097 password = new JPasswordField();098 password.setBounds(100, 130, 150, 20);099 // 密码输入框旁边的文字100jl4 = new JLabel("找回密码");101 jl4.setBounds(260, 130, 70, 20);102 103 // 输入框下方文字104jc1 = new JCheckBox("记住密码");105jc1.setBounds(105, 155, 80, 15);106 jc2 = new JCheckBox("自动登录");107 jc2.setBounds(185, 155, 80, 15);108 109 // 用户登录状态选择110jcb = new JComboBox();111 jcb.addItem("在线");112 jcb.addItem("隐身");113 jcb.addItem("离开");114 jcb.setBounds(40, 150, 55, 20);115 116 // 按钮设定117 bu1 = new JButton("登录");118bu1.setBounds(280, 200, 65, 20);119 // 给按钮添加1个事件120 bu1.addActionListener(new ActionListener() {121 122@Override123 public voidactionPerformed(ActionEvent e) {124 String str=e.getActionCommand();125 if("登录".equals(str)){126 String getName=username.getText();127// String getPwd =password.getText();128JOptionPane.showConfirmDialog(null, "您输入的用户名是"+getName);129 }130131 }132 });133 134135 bu2 = new JButton("多账号");136bu2.setBounds(5, 200, 75, 20);137 bu3 = new JButton("设置");138 bu3.setBounds(100, 200, 65, 20);139 140 // 所有组件用容器装载141jl1.add(jl2);142 jl1.add(jl3);143jl1.add(jl4);144 jl1.add(jc1);145jl1.add(jc2);146 jl1.add(jcb);147jl1.add(bu1);148 jl1.add(bu2);149jl1.add(bu3);150 con.add(jl1);151con.add(username);152 con.add(password);153154 }155 156 public static void main(String[] args) {157 // 实例化对象158 GUIQQ qq = new GUIQQ();159 }160 161}。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档