整理 | 小耕家的喵大仙
出品 | CSDN(ID:lichao19897314)
Q Q | 978124155
往期知识回顾:
👆 以上文章是以往对使用自动化技术操作微信的一些文章及案例!!!!
一位药厂的朋友咨询,他说他想实现下面的功能,都是针对微信主窗体的一些行为控制!今天我就给他解惑并安排!
- 分析微信主窗体是否当前处于最小化。
- 分析微信主窗体是否隐藏到了系统托盘。
- 最小化微信主窗体。
- 最大化微信主窗体。
- 微信主窗体隐藏到系统托盘后恢复到默认状态。
- 控制微信主窗体移动位置。
- 设置微信主窗体从失去焦点到恢复焦点。
接下来用3个视频演示上面的功能
视频一微信是否最小化,并执行最大化最小化操作
微信最大化最小化操作
视频二设置微信窗体焦点和移动到屏幕某个位置
设置焦点和移动到某个位置
视频三微信是否隐藏到系统托盘并从系统托盘恢复
微信系统托盘操作
以下是演示代码,核心源码比较多,建议收藏联系我获取!
判断微信是否最小化
private void 是否最小化(object sender, EventArgs e)
{
var result = Win32_WindowMin.Do(WXWin32.GetWeiXin());
if (result)
{
MessageBox.Show("微信已最小化");
}
else
{
MessageBox.Show("微信未最小化");
}
}
设置最小化
private void 最小化(object sender, EventArgs e)
{
Win32_SetForegroundWindow.Do(WXWin32.GetWeiXin());
Win32_ShowWindow.Min(WXWin32.GetWeiXin());
}
设置最大化
private void 最大化(object sender, EventArgs e)
{
Win32_SetForegroundWindow.Do(WXWin32.GetWeiXin());
Win32_ShowWindow.Max(WXWin32.GetWeiXin());
}
让微信获得焦点
private void 设置焦点(object sender, EventArgs e)
{
var id = WXWin32.GetWeiXin();
Win32_SetForegroundWindow.Do(id);
}
移动微信主窗体到某个位置
private void 移动窗体到某个位置(object sender, EventArgs e)
{
Task.Run(new Action(() =>
{
var id = WXWin32.GetWeiXin();
if (id != IntPtr.Zero)
{
Win32_Move_Window.Do(id, 100, 100);
}
}));
}
是否隐藏到系统托盘
private void 是否隐藏到系统托盘(object sender, EventArgs e)
{
var result = !Win32_IsWindowVisible.Do(WXWin32.GetWeiXin());
if (result)
{
MessageBox.Show("微信已隐藏到系统托盘");
}
else
{
MessageBox.Show("微信未隐藏到系统托盘");
}
}
从系统托盘中恢复
private void 从系统托盘中恢复(object sender, EventArgs e)
{
Win32_SetForegroundWindow.Do(WXWin32.GetWeiXin());
Win32_ShowWindow.Normal(WXWin32.GetWeiXin());
}
如果读者对上述文章存在不清晰的地方可以找本人获取运行源码来学习,QQ 978124155
(14)微信自动化测试-针对微信控件元素截图操作https://blog.csdn.net/lichao19897314/article/details/135405225
(16)微信自动化测试-PC微信多开https://blog.csdn.net/lichao19897314/article/details/135425631