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连接 上述通信都要先在传输层有建立连接的 ...
随机推荐
- [剑指OFFER] 数组中的逆序对
题目描述 在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对.输入一个数组,求出这个数组中的逆序对的总数. 分析:利用归并排序的思想,分成2部分,每一部分按照从大到 ...
- ajax原理总结附简单实例及其优点
在工作中用了Ajax N多次了,也看过一些相关方面的书籍,也算是认识了它,但是一直没有认真总结和整理过相关的东东,失败! 近有闲情,将之总结如下: [名称] Ajax是Asynchronous Jav ...
- Node.js NPM国内镜像
NPM国内镜像 http://npm.hacknodejs.com/ http://registry.npmjs.vitecho.com/ https://registry.npm.taobao.or ...
- HDU 1671 Phone List(字符处理)
题目 用字典树可以过,可是我写的字典树一直各种错误,,, 所以,我用了别的更简便的方法.. //去你妹的一直有问题的字典树!!! ////字典树,树的根是空的 // ////#include<i ...
- iOS工程预编译文件的创建
在搜索 添加工程名/自己的pch文件名记住加后缀
- Activity学习(二)——生命周期
一.什么是Activity? 简单的说:Activity就是布满整个窗口或者悬浮于其他窗口上的交互界面.在一个应用程序中通常由多个Activity构成,都会在Manifest.xml中指定一个主的Ac ...
- 刘汝佳 算法竞赛-入门经典 第二部分 算法篇 第五章 1(String)
第一题:401 - Palindromes UVA : http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8 ...
- zoj 2686 Cycle Game 博弈论
其实规律很好找的,当从某点开始,向某一边找出非0的个数,为奇数时必胜. 代码如下: #include<iostream> #include<cstdio> using name ...
- Linux网络编程7——使用TCP实现双方聊天
思路 主线程负责发送消息,另一线程负责接收消息.服务端和客户端均是如此. 注意 当A方close掉用于通信的socket端口后,该端口是不会立即关闭的.因为此时可能B方的信息还没send完.因此,此时 ...
- HDU5596/BestCoder Round #66 (div.2) 二分BIT/贪心
GTW likes gt Memory Limit: 131072/131072 K (Java/Others) 问题描述 从前,有nn只萌萌的GT,他们分成了两组在一起玩游戏.他们会排列成一排 ...