上一篇文章完成了服务端程序的优化,本篇文章将实现主界面初始化以及添加好友发送验证消息操作。
回顾上一次,我们客户端程序做到登录后连接上服务器,我们接着按照程序应该有的步骤将功能依次实现。
首先,登录后,加载主界面。主界面需要初始化一些东西。
初始化用户信息
因为我们做的比较简单,用户信息只有账号、昵称和密码,所以要初始化的用户信息也就只有昵称了。
在Major主窗体加载事件中,将之前我们测试生成会话和好友列表的代码注释掉,然后写一个初始化用户数据函数:
private void Major_Load(object sender, EventArgs e)
{
CheckForIllegalCrossThreadCalls = false;
//for (int i = 0; i < 100; i++)
//{
// loadtalk(i,loadTalkMessageList());
// loadFriends(i, loadFriendList());
//}
//窗体加载时初始化
//初始化用户信息
initUserData();
}
接着写出函数体:
private void initUserData()
{
SqlDataReader sdr = SqlHelper.ExecuteReader("select * from Users where Account='" + Common.Account + "'");
//加载昵称
if (sdr.Read())
{
lbl_NickName.Text = sdr[3].ToString();
}
sdr.Close();
}
很简单,利用账号查找昵称,将主界面上的昵称label的text更改就行了。
然后应该是初始化会话列表和好友列表,但是我们还没有好友,所以现在不做这两个功能。我们先来做查找好友和添加好友功能。
查找好友功能实现
我们切换到查找好友界面,只需要实现查找按钮的点击事件即可:
private void button1_Click(object sender, EventArgs e)
{
//for (int i = 0; i < 10; i++)
//{
// add_panel(list[i].Account,list[i].NickName);
//}
//先移除flowlayoutpanel上的控件
flowLayoutPanel1.Controls.Clear();
//根据账号查找用户
List userlist = loadUser();
if (userlist.Count > 0)
{
for (int i = 0; i < userlist.Count; i++)
{
add_panel(userlist[i].Account, userlist[i].NickName);
}
label2.Visible = true;
label2.Text = "找到" + userlist.Count + "个用户";
}