?? frmmain.cs
字號:
?using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Model;
using BLL;
using Aptech.UI;
namespace MyQQ
{
public partial class frmMain : Form
{
private bool _isFlickerMsgTip =true;
private bool _isFlickerText = true;
private string tempText = "";
private Image _picMsgTip ;
/// <summary>
/// 臨時存儲消息隊列
/// </summary>
private List<MessagesInfo> _MsgList;
public frmMain()
{
InitializeComponent();
_picMsgTip = btnToolMessage.Image; //
AppSetter.AllHeaders = imgAllHeaders;
// _FlickerFaces = imgAllHeaders;
}
protected override void OnClosed(EventArgs e)
{
Application.Exit();
}
/// <summary>
/// 顯示我的好友列表信息
/// </summary>
private void BindMyFriends()
{
sbFriends.Groups[0].Items.Clear();
List<FriendsInfo> _FList = Friends.GetFriends(AppSetter.CurrentUser.Id);
foreach (FriendsInfo obj in _FList)
{
SbItem item=new SbItem(obj.Friend.NickName, obj.Friend.FaceId);
item.ContextMenuStrip = cmsPopu;
item.Tag=obj.Friend;
sbFriends.Groups[0].Items.Add(item);
}
}
/// <summary>
/// 移到陌生人列表里
/// </summary>
/// <param name="entity"></param>
private void MoveToStrangeList(UsersInfo entity)
{
SbItem item = new SbItem(entity.NickName, entity.FaceId);
item.Tag = entity;
sbFriends.Groups[1].Items.Add(item);
}
/// <summary>
/// 刷新顯示我的個人信息
/// </summary>
private void RefreshMyInfo()
{
this.Text = AppSetter.CurrentUser.Id.ToString();
lblMyTitle.Text = AppSetter.CurrentUser.NickName + "(" + AppSetter.CurrentUser.Id.ToString() + ")";
picMyHeader.Image = AppSetter.AllHeaders.Images[AppSetter.CurrentUser.FaceId];
}
private void frmMain_Load(object sender, EventArgs e)
{
RefreshMyInfo();
sbFriends.AddGroup("我的好友");
sbFriends.AddGroup("陌生人");
sbFriends.Groups[0].Tag = "0";
sbFriends.Groups[1].Tag = "1";
BindMyFriends();
timer1.Enabled = true;
}
private void LoadMessages()
{
}
private void btnToolAdd_Click(object sender, EventArgs e)
{
frmSearch frm= new frmSearch();
frm.ShowDialog();
BindMyFriends();
}
private void btnToolEdit_Click(object sender, EventArgs e)
{
frmProfileSet frm = new frmProfileSet();
frm.ShowDialog();
//如果資料更新就刷新我的顯示信息
if (frm.HasUpdate)
{
RefreshMyInfo();
}
}
private void sbFriends_ItemDoubleClick(Aptech.UI.SbItemEventArgs e)
{
frmChat frm=new frmChat();
frm.CurrentFriend=(UsersInfo)e.Item.Tag;
frm.Show();
}
private void btnToolHeaderConfig_Click(object sender, EventArgs e)
{
frmHeadersList frm = new frmHeadersList();
frm.ShowDialog();
this.picMyHeader.Image =AppSetter.AllHeaders.Images[AppSetter.CurrentUser.FaceId];
}
/// <summary>
/// 頭像閃爍
/// </summary>
private void HeaderFlicker(int groupIndex,int headerIndex)
{
if(string.IsNullOrEmpty(sbFriends.Groups[groupIndex].Items[headerIndex].Text))
tempText = sbFriends.Groups[groupIndex].Items[headerIndex].Text;
if (_isFlickerText)
{
sbFriends.Groups[groupIndex].Items[headerIndex].Text = "";
_isFlickerText = false;
}
else
{
sbFriends.Groups[groupIndex].Items[headerIndex].Text = tempText;
_isFlickerText = true;
}
}
/// <summary>
/// 獲取當前用戶未讀信息
/// </summary>
private void GetMessages()
{
_MsgList=Messages.GetMyNotReadMessages(AppSetter.CurrentUser.Id);
if (_MsgList.Count > 0)
{
FlickerMessageTip();
//HeaderFlicker(0,2);
}
else if (btnToolMessage.Image == null)
{
btnToolMessage.Image = _picMsgTip;
}
}
/// <summary>
/// 閃爍消息提示
/// </summary>
private void FlickerMessageTip()
{
if (_isFlickerMsgTip)
{
btnToolMessage.Image = _picMsgTip;
_isFlickerMsgTip = false;
}
else
{
btnToolMessage.Image = null;
_isFlickerMsgTip = true;
}
}
private void timer1_Tick(object sender, EventArgs e)
{
GetMessages();
}
private void btnToolMessage_Click(object sender, EventArgs e)
{
if (_MsgList.Count > 0)
{
MessagesInfo objMsg=_MsgList[0];
int iMsgType=objMsg.MessageType.Id;
if(iMsgType==(int)EnumMessageType.ChatMessage)
{
frmChat frmchat =new frmChat();
frmchat.ReceiveMessage = objMsg;
frmchat.Show();
}
else if(iMsgType==(int)EnumMessageType.RequestAddFriend)
{
frmMessage frmMsg=new frmMessage();
frmMsg.SysMessage = _MsgList[0];
frmMsg.ShowDialog();
}
else
{
frmMessage frmMsg2 = new frmMessage();
frmMsg2.SysMessage = _MsgList[0];
frmMsg2.ShowDialog();
if (iMsgType == (int)EnumMessageType.ReturnAgreeAdd)
{
BindMyFriends();
}
}
}
}
private void btnToolRefresh_Click(object sender, EventArgs e)
{
BindMyFriends();
}
private void cmsSmallHeader_Click(object sender, EventArgs e)
{
if (sbFriends.View != SbView.SmallIcon)
{
sbFriends.View = SbView.SmallIcon;
cmsSmallHeader.Text = "大頭像";
}
else
{
sbFriends.View = SbView.LargeIcon;
cmsSmallHeader.Text = "小頭像";
}
}
private void cmsDeleteFriend_Click(object sender, EventArgs e)
{
if (sbFriends.SeletedItem != null)
{
//從陌生人里刪除
if (sbFriends.SeletedItem.Parent.Tag.ToString() == "1")
{
sbFriends.Groups[0].Items.Remove(sbFriends.SeletedItem);
}
else
{
//從服務器里刪除
UsersInfo tempUser = ((UsersInfo)sbFriends.SeletedItem.Tag);
if (DialogResult.Yes == MessageBox.Show("您真的要刪除[" + tempUser.NickName + "]好友嗎?", "提示", MessageBoxButtons.YesNo))
{
Friends.DeleteFriend(AppSetter.CurrentUser.Id, tempUser.Id);
BindMyFriends();
MoveToStrangeList(tempUser);
}
}
}
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -