MFC高手请进
我用ShowWindow()函数来实现通过一个对话框来打开qq窗口,用FindWindow()来返回qq的窗口句柄;实现代码如下:voidCQQopenDlg::OnBu...
我用ShowWindow()函数来实现通过一个对话框来打开qq窗口,用FindWindow()来返回qq的窗口句柄;实现代码如下:
void CQQopenDlg::OnButton1() //这个是对话框一个按钮的响应函数。
{
// TODO: Add your control notification handler code here
if(!::ShowWindow(::FindWindow(NULL,"QQ2011"),SW_SHOW))
MessageBox("显示qq窗口");
}
结果在第一次运行的时候是可以实现目的的,可是到了以后就一直打不开窗口了。而我改变了一下:
void CQQopenDlg::OnButton1()
{
// TODO: Add your control notification handler code here
if(!::ShowWindow(::FindWindow("TXGuiFoundation",NULL),SW_SHOW))
MessageBox("显示qq窗口");
}
"TXGuiFoundation"是qq窗口的类名还是不可以。而我又改变了一下
void CQQopenDlg::OnButton1()
{
// TODO: Add your control notification handler code here
if(!::ShowWindow(::FindWindow("shell_TrayWnd",NULL),SW_HIDE))
MessageBox("显示操作系统任务栏操作成功");
}
则是可以的。这是为啥! 展开
void CQQopenDlg::OnButton1() //这个是对话框一个按钮的响应函数。
{
// TODO: Add your control notification handler code here
if(!::ShowWindow(::FindWindow(NULL,"QQ2011"),SW_SHOW))
MessageBox("显示qq窗口");
}
结果在第一次运行的时候是可以实现目的的,可是到了以后就一直打不开窗口了。而我改变了一下:
void CQQopenDlg::OnButton1()
{
// TODO: Add your control notification handler code here
if(!::ShowWindow(::FindWindow("TXGuiFoundation",NULL),SW_SHOW))
MessageBox("显示qq窗口");
}
"TXGuiFoundation"是qq窗口的类名还是不可以。而我又改变了一下
void CQQopenDlg::OnButton1()
{
// TODO: Add your control notification handler code here
if(!::ShowWindow(::FindWindow("shell_TrayWnd",NULL),SW_HIDE))
MessageBox("显示操作系统任务栏操作成功");
}
则是可以的。这是为啥! 展开
AiPPT
2024-09-19 广告
2024-09-19 广告
随着AI技术的飞速发展,如今市面上涌现了许多实用易操作的AI生成工具1、简介:AiPPT: 这款AI工具智能理解用户输入的主题,提供“AI智能生成”和“导入本地大纲”的选项,生成的PPT内容丰富多样,可自由编辑和添加元素,图表类型包括柱状图...
点击进入详情页
本回答由AiPPT提供
展开全部
我用你的第一份代码
是可以使最小化的qq窗口显示出来,不存在你说的第一次第二次的问题
如果qq窗口停靠在边上隐藏到桌面外面是不能显示的.
//下面是改进后的,还是有点问题,不过可以show出来了
void CDlgTestDlg::OnBnClickedButton1()
{
HWND hWnd = ::FindWindow(NULL,L"QQ2011");
if(hWnd)
{
if (::IsWindowVisible(hWnd))//是否已经显示
{//如果已经显示了,移动窗口位置到200,200//坐标你可以自己调整
if(::SetWindowPos(hWnd, NULL, 200, 200, 0, 0, SWP_NOSIZE | SWP_SHOWWINDOW | SWP_NOZORDER))
{
MessageBox(L"显示qq窗口");
}
}
else
{//如果隐藏,把它show出来
if(::ShowWindow(hWnd, SW_SHOW))
{
MessageBox(L"显示qq窗口");
}
}
}
}
是可以使最小化的qq窗口显示出来,不存在你说的第一次第二次的问题
如果qq窗口停靠在边上隐藏到桌面外面是不能显示的.
//下面是改进后的,还是有点问题,不过可以show出来了
void CDlgTestDlg::OnBnClickedButton1()
{
HWND hWnd = ::FindWindow(NULL,L"QQ2011");
if(hWnd)
{
if (::IsWindowVisible(hWnd))//是否已经显示
{//如果已经显示了,移动窗口位置到200,200//坐标你可以自己调整
if(::SetWindowPos(hWnd, NULL, 200, 200, 0, 0, SWP_NOSIZE | SWP_SHOWWINDOW | SWP_NOZORDER))
{
MessageBox(L"显示qq窗口");
}
}
else
{//如果隐藏,把它show出来
if(::ShowWindow(hWnd, SW_SHOW))
{
MessageBox(L"显示qq窗口");
}
}
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是打不开QQ窗口?还是弹不出你的对话框?
如果是后者,QQ窗口已经显示了,返回值为真,不会再调用messagebox
如果是后者,QQ窗口已经显示了,返回值为真,不会再调用messagebox
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询