QQ互发消息

private NewsData data;
private void button3_Click(object sender, EventArgs e) //发送
{
string x = textBox1.Text; //将输入框的内容存到x里面
new NewsDA().Insert(x);//然后将x存到数据库里面去
textBox1.Text = "";//清空一下原来的输入框
data = new NewsDA().Select1();//调用一个查询方法 ,查一下刚刚存到数据库里的数据
if(data!=null)
{
textBox2.Text = textBox2.Text + "\r\n" + data.Neirong;//将查到的刚存到数据库的数据放到右边的文本框里
} }
private List<NewsData> sss;
private string y;
private void timer1_Tick(object sender, EventArgs e) //定时执行事件
{
sss = new NewsDA().Select2(); //查一下对方发过来的信息(也是先存到数据库,但是是另外一个表里),然后定时查询
//if(sss!=null) //定时查询后每次都存到左边的文本框里
//{
// textBox3.Text = sss[i].Neirong;
//}
if (sss != null)
{
for (int i = ; i < sss.Count; i++)
{
y = sss[i].Neirong; //查出来的内容
}
}
textBox3.Text = y; }


---------------------------------另一个对话框的代码一样,只是查询的各自的表相反
private NewsData data;
private void button1_Click(object sender, EventArgs e) //发送
{
string x = textBox1.Text; //将输入框的文本存到x里面
new NewsDA().Insertagain(x);//将x存到数据库里面
textBox1.Text = "";
data = new NewsDA().Select4();
if (data != null)
{
textBox2.Text = textBox2.Text + "\r\n" + data.Neirong;
}
}
private void timer1_Tick(object sender, EventArgs e) //定时执行事件
{
string zqqq = "";
List<NewsData> s =new NewsDA().Select5();//查一下自己发过去的消息
if(s!=null)
{
for (int i = ; i < s.Count; i++)
{
zqqq = s[i].Neirong;//查到之后显示在左边的文本框里
}
textBox3.Text = zqqq;
}
}
}
-------------下面是NewsDA 大部分都一样,写的很乱。其实就几个,有一些是没用的
public class NewsDA
{
private SqlConnection Conn;
private SqlCommand Cmd; public NewsDA()
{
Conn = new SqlConnection("server=.;database=Tencent;user=sa;pwd=123");
Cmd = Conn.CreateCommand();
}
public void Insert(string x)
{ Conn.Open();
Cmd.CommandText = "insert into news values(@z)";
Cmd.Parameters.Clear();
Cmd.Parameters.Add("@z",x);
Cmd.ExecuteNonQuery();
Cmd.Dispose();
Conn.Close(); }
public void Insertagain(string x)
{ Conn.Open();
Cmd.CommandText = "insert into newsagain values(@z)";
Cmd.Parameters.Clear();
Cmd.Parameters.Add("@z", x);
Cmd.ExecuteNonQuery();
Cmd.Dispose();
Conn.Close(); }
public List<NewsData> Select()
{
List<NewsData> list = null;
Conn.Open();
Cmd.CommandText = "select * from news";
SqlDataReader dr = Cmd.ExecuteReader();
if (dr.HasRows)
{
list = new List<NewsData>();
while (dr.Read())
{
NewsData s = new NewsData();
s.Neirong = dr["neirong"].ToString();
list.Add(s);
}
}
return list;
}
public NewsData Select1()
{
NewsData list = null;
Conn.Open();
Cmd.CommandText = "select * from news";
SqlDataReader dr = Cmd.ExecuteReader();
if (dr.HasRows)
{
list = new NewsData();
while (dr.Read())
{ list.Neirong = dr["neirong"].ToString(); }
}
return list;
}
public List<NewsData> Select2()
{
List<NewsData> list = null;
Conn.Open();
Cmd.CommandText = "select* from newsagain";
SqlDataReader dr = Cmd.ExecuteReader();
if (dr.HasRows)
{
list = new List<NewsData>();
while (dr.Read())
{
NewsData a = new NewsData();
a.Neirong = dr["neirong"].ToString();
list.Add(a); }
}
return list;
}
public NewsData Select3()
{
NewsData list = null;
Conn.Open();
Cmd.CommandText = "select top 1* from newsagain order by ids desc";
SqlDataReader dr = Cmd.ExecuteReader();
if (dr.HasRows)
{
list = new NewsData();
while (dr.Read())
{ list.Neirong = dr["neirong"].ToString(); }
}
return list;
}
public NewsData Select4()
{
NewsData list = null;
Conn.Open();
Cmd.CommandText = "select * from newsagain ";
SqlDataReader dr = Cmd.ExecuteReader();
if (dr.HasRows)
{
list = new NewsData();
while (dr.Read())
{ list.Neirong = dr["neirong"].ToString(); }
}
return list;
}
public List<NewsData> Select5()
{
List<NewsData> list = null;
Conn.Open();
Cmd.CommandText = "select* from news";
SqlDataReader dr = Cmd.ExecuteReader();
if (dr.HasRows)
{
list = new List<NewsData>();
while (dr.Read())
{
NewsData a = new NewsData();
a.Neirong = dr["neirong"].ToString();
list.Add(a); }
}
return list;
}
public void Delete1(string ids)
{ Conn.Open();
Cmd.CommandText = "delete from news where ids='"+ids+"'";
Cmd.ExecuteReader();
Cmd.Dispose();
Conn.Close(); }
public void Deleteagain()
{ Conn.Open();
Cmd.CommandText = "delete from newsagain ";
Cmd.ExecuteReader();
Cmd.Dispose();
Conn.Close(); }
public void Delete2(string ids)
{ Conn.Open();
Cmd.CommandText = "delete from newsagain where ids='" + ids + "'";
Cmd.ExecuteReader();
Cmd.Dispose();
Conn.Close(); }
public void Delete()
{ Conn.Open();
Cmd.CommandText = "delete from news";
Cmd.ExecuteReader();
Cmd.Dispose();
Conn.Close(); } //第二个
public NewsData Selectagain()
{
NewsData list = null;
Conn.Open();
Cmd.CommandText = "select * from newsagain";
SqlDataReader dr = Cmd.ExecuteReader();
if (dr.HasRows)
{
list = new NewsData();
while (dr.Read())
{ list.Neirong = dr["neirong"].ToString(); }
}
return list;
}
QQ互发消息的更多相关文章
- netty-2.客户端与服务端互发消息
(原) 第二篇,客户端与服务端互发消息 与第一篇的例子类似,这里服务端需要三个类,客户端也需要三个类. 服务端关键代码如下:MyServer与上一个例子中的TestServer 差多,这里只列举不同的 ...
- 初识python:scoket 单用户互发消息
实现功能: 启动"服务器".通过"客户端1"连接"服务器",然后互发消息.在此过程中,有"客户端2"连接到"服 ...
- vbs脚本实现qq定时发消息(初级)
vbs脚本实现QQ消息定时发送 目标 批处理又称为批处理脚本,强大的强大功能可以高效得实现很多功能,例如批量更改文件格式,批量进行文件读写,今天我们的目标是用vbs脚本编写可以发送qq消息的脚本,并利 ...
- Handler详解系列(四)——利用Handler在主线程与子线程之间互发消息,handler详解
MainActivity如下: package cc.c; import android.app.Activity; import android.os.Bundle; import android. ...
- Handler具体解释系列(四)——利用Handler在主线程与子线程之间互发消息
MainActivity例如以下: package cc.c; import android.app.Activity; import android.os.Bundle; import androi ...
- 关于QQ可以发消息但是网页刷不出来问题
相信很多人都遇到过这个问题,明明可以登陆QQ,但是网页就是打不开,而且这种情况经常伴有网卡图标显示叹号的情况.笔者这里就教你一个方法,保证好用. 首先,在开始菜单输入cmd,在命令符模式下点击右键选择 ...
- udp 内网穿透 互发消息
还差实现内网终端,向服务器发送请求,要对方的内网连接自己,实现打洞.在同一网段,或者公网运行,可以相互聊天. 没有实现检测客户端下线功能. 1,服务器代码 package router; import ...
- 通过GUI制作一个简单的消息对话框互发消息
public class LTS extends JFrame { private JPanel contentPane; private JTextField textField; private ...
- java Socket通信,客户端与服务端相互发消息
1.通信过程 网络分为应用层,http.ssh.telnet就是属于这一类,建立在传输层的基础上.其实就是定义了各自的编码解码格式,分层如下: 2.Socket连接 上述通信都要先在传输层有建立连接的 ...
随机推荐
- 两种高性能I/O设计模式(Reactor/Proactor)的比较
原文出处: Alex Libman 译文出处:潘孙友 欢迎分享原创到伯乐头条 综述 这篇文章探讨并比较两种用于TCP服务器的高性能设计模式. 除了介绍现有的解决方案,还提出了一种更具伸缩性,只 ...
- 在centos 6.5 在virtual box 上 安装增强版工具
centos 6.5 在virtual box 上 安装增强版工具: 出现:centos unable to find the source of your current linux kernel ...
- wordpress无法安装这个包。: PCLZIP_ERR_MISSING_FILE (-4) : Missing archive file 'C:\WINDOWS\TEMP/wordpress-4.tmp'
朋友的wp博客好久没管理了,让ytkah帮忙打理一下,进到后台发现版本还是3.9的,那是比较早以前的版本了,早该升级了. 在升级wordpress时出现以下错误: 无法安装这个包: PCLZIP_ER ...
- JS获取节点方法
1. 通过顶层document节点获取:(1) document.getElementById(elementId):该方法通过节点的ID,可以准确获得需要的元素,是比较简单快捷的方法.如果页面上含有 ...
- 用 VIPER 构建 iOS 应用架构(2)
[编者按]本篇文章由 Jeff Gilbert 和 Conrad Stoll 共同编写,通过构建一个基础示例应用,深入了解 VIPER,并从视图.交互器等多个部件理清 VIPER 的整体布局及思路.通 ...
- db2日期和时间常用汇总
1.db2可以通过SYSIBM.SYSDUMMY1.SYSIBM.DUAL获取寄存器中的值,也可以通过VALUES关键字获取寄存器中的值. SELECT 'HELLO DB2' FROM SYSIBM ...
- Windbg 常用命令整理
kd> !idt -a 查看idt kd> dt _ktrap_frame 异常帧 kd> ba e1 Address 下硬件执行断点kd> ba w4 Addr ...
- Jmeter 快速入门教程(三-3) -- 使用参数化
参数化:简单的来理解一下,我们录制了一个脚本,这个脚本中有登录操作,需要输入用户名和密码,假如系统不允许相同的用户名和密码同时登录,或者想更好的模拟多个用户来登录系统. 这个时候就需要对用户名和密码进 ...
- tvm install
一.系统需求:1.可以访问互联网2.关闭防火墙和selinux 二.安装步骤(进入软件包所在目录):1.rpm -ivh daemontools-0.76-1.el6.x86_64.rpm2.yum ...
- hdu 4159 Indomie (DP,数学概率)
推出数学公式: #include<stdio.h> #include<string.h> __int64 C(int m,int n) { __int64 tmp=; if(m ...