根据最新提炼的头像类更改完成。
This commit is contained in:
@@ -81,6 +81,8 @@ namespace 软件系统客户端模版
|
|||||||
net_socket_client.AcceptString += Net_socket_client_AcceptString;
|
net_socket_client.AcceptString += Net_socket_client_AcceptString;
|
||||||
//启动网络服务
|
//启动网络服务
|
||||||
Net_Socket_Client_Initialization();
|
Net_Socket_Client_Initialization();
|
||||||
|
//启动头像
|
||||||
|
SoftUserPortraitInitialization();
|
||||||
|
|
||||||
label_Announcement.Text = UserClient.Announcement;
|
label_Announcement.Text = UserClient.Announcement;
|
||||||
|
|
||||||
@@ -118,7 +120,7 @@ namespace 软件系统客户端模版
|
|||||||
//启动定时器
|
//启动定时器
|
||||||
TimeTickInitilization();
|
TimeTickInitilization();
|
||||||
//显示头像
|
//显示头像
|
||||||
DownloadUserPortraint();
|
SoftUserPortrait.DownloadUserPortraint();
|
||||||
}
|
}
|
||||||
private void FormMainWindow_FormClosing(object sender, FormClosingEventArgs e)
|
private void FormMainWindow_FormClosing(object sender, FormClosingEventArgs e)
|
||||||
{
|
{
|
||||||
@@ -300,7 +302,7 @@ namespace 软件系统客户端模版
|
|||||||
|
|
||||||
private void 更换头像ToolStripMenuItem_Click(object sender, EventArgs e)
|
private void 更换头像ToolStripMenuItem_Click(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
ChangePortrait();
|
SoftUserPortrait.ChangePortrait();
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
@@ -623,133 +625,26 @@ namespace 软件系统客户端模版
|
|||||||
|
|
||||||
#region 头像图片上传下载块
|
#region 头像图片上传下载块
|
||||||
|
|
||||||
private string GetPortraitPath()
|
|
||||||
|
private UserPortrait SoftUserPortrait { get; set; }
|
||||||
|
|
||||||
|
private void SoftUserPortraitInitialization()
|
||||||
{
|
{
|
||||||
string path = Application.StartupPath + @"\Portrait\" + UserClient.UserAccount.UserName;
|
SoftUserPortrait = new UserPortrait(Application.StartupPath + @"\Portrait\" + UserClient.UserAccount.UserName, m => pictureBox1.LoadAsync(m));
|
||||||
if (!System.IO.Directory.Exists(path))
|
|
||||||
{
|
|
||||||
System.IO.Directory.CreateDirectory(path);
|
|
||||||
}
|
|
||||||
return path;
|
|
||||||
}
|
|
||||||
|
|
||||||
private void ChangePortrait()
|
|
||||||
{
|
|
||||||
using (FormPortraitSelect fps = new FormPortraitSelect())
|
|
||||||
{
|
|
||||||
if (fps.ShowDialog() == DialogResult.OK)
|
|
||||||
{
|
|
||||||
string path = GetPortraitPath();
|
|
||||||
|
|
||||||
string guid = Guid.NewGuid().ToString("N");
|
|
||||||
string path300 = path + @"\" + PortraitSupport.LargePortrait;
|
|
||||||
string path32 = path + @"\" + PortraitSupport.SmallPortrait;
|
|
||||||
|
|
||||||
Bitmap bitmap300 = fps.GetSpecifiedSizeImage(300);
|
|
||||||
bitmap300.Save(path300);
|
|
||||||
Bitmap bitmap32 = fps.GetSpecifiedSizeImage(32);
|
|
||||||
bitmap32.Save(path32);
|
|
||||||
//传送服务器
|
|
||||||
bitmap300.Dispose();
|
|
||||||
bitmap32.Dispose();
|
|
||||||
|
|
||||||
using (FormFileOperate ffo = new FormFileOperate(CommonHeadCode.KeyToken, new System.Net.IPEndPoint(
|
|
||||||
System.Net.IPAddress.Parse(UserClient.ServerIp), CommonLibrary.CommonLibrary.Port_Portrait_Server),
|
|
||||||
new string[]
|
|
||||||
{
|
|
||||||
path300,
|
|
||||||
path32
|
|
||||||
}, "Files", "Portrait", UserClient.UserAccount.UserName))
|
|
||||||
{
|
|
||||||
ffo.ShowDialog();
|
|
||||||
}
|
|
||||||
DownloadUserPortraint();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
private void DownloadUserPortraint()
|
|
||||||
{
|
|
||||||
string path = GetPortraitPath();
|
|
||||||
//获取服务器文件名称
|
|
||||||
OperateResultString result = UserClient.Net_simplify_client.ReadFromServer(CommonHeadCode.SimplifyHeadCode.请求小头, UserClient.UserAccount.UserName);
|
|
||||||
if(result.IsSuccess)
|
|
||||||
{
|
|
||||||
if(result.Content[0]=='Y')
|
|
||||||
{
|
|
||||||
//服务器存在头像
|
|
||||||
string fileName = path + @"\" + PortraitSupport.SmallPortrait;
|
|
||||||
string FileMd5 = result.Content.Substring(1);
|
|
||||||
if (System.IO.File.Exists(fileName))
|
|
||||||
{
|
|
||||||
//文件文件
|
|
||||||
string currentMd5 = SoftBasic.CalculateFileMD5(fileName);
|
|
||||||
if (currentMd5 == FileMd5)
|
|
||||||
{
|
|
||||||
//加载本地头像
|
|
||||||
pictureBox1.LoadAsync(fileName);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
//头像已经换了
|
|
||||||
DownloadUserPortraint(path);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
//客户端不存在头像
|
|
||||||
DownloadUserPortraint(path);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
//服务器不存在头像,本次加载结束
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void DownloadUserPortraint(string path)
|
|
||||||
{
|
|
||||||
OperateResultString result = UserClient.Net_simplify_client.ReadFromServer(CommonHeadCode.SimplifyHeadCode.下载小头, UserClient.UserAccount.UserName);
|
|
||||||
if (result.IsSuccess)
|
|
||||||
{
|
|
||||||
if (result.Content[0] == 'Y')
|
|
||||||
{
|
|
||||||
byte[] data = Convert.FromBase64String(result.Content.Substring(1));
|
|
||||||
string path32 = path + @"\" + PortraitSupport.SmallPortrait;
|
|
||||||
System.IO.File.WriteAllBytes(path32, data);
|
|
||||||
pictureBox1.LoadAsync(path32);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void pictureBox1_Click(object sender, EventArgs e)
|
private void pictureBox1_Click(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
//点击了头像,请求下载高清版本头像
|
//点击了头像,请求下载高清版本头像
|
||||||
using (FormMatterRemind fmr = new FormMatterRemind("正在下载图片", ThreadPoolDownloadSizeLarge))
|
using (FormMatterRemind fmr = new FormMatterRemind("正在下载图片", SoftUserPortrait.ThreadPoolDownloadSizeLarge))
|
||||||
{
|
{
|
||||||
fmr.ShowDialog();
|
fmr.ShowDialog();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void ThreadPoolDownloadSizeLarge()
|
|
||||||
{
|
|
||||||
string path = GetPortraitPath();
|
|
||||||
OperateResultString result = UserClient.Net_simplify_client.ReadFromServer(CommonHeadCode.SimplifyHeadCode.下载大头, UserClient.UserAccount.UserName);
|
|
||||||
if (result.IsSuccess)
|
|
||||||
{
|
|
||||||
if (result.Content[0] == 'Y')
|
|
||||||
{
|
|
||||||
byte[] data = Convert.FromBase64String(result.Content.Substring(1));
|
|
||||||
string path32 = path + @"\" + PortraitSupport.LargePortrait;
|
|
||||||
System.IO.File.WriteAllBytes(path32, data);
|
|
||||||
System.Diagnostics.Process.Start(path32);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Thread.Sleep(1000);
|
|
||||||
}
|
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user