我的程序是一个实时采集数据的程序。当我的程序不用的时候,我手动的最小化到任务任上。当我的程序接受到数据的时候,程序自动从任务栏上弹出,使窗口最大化。怎么使程序接受到数据的时候最大化窗口体。这是我实现的方法. void CCollData::CollData(char* buffer)
{
//这是我接到数据后,发送的一个使窗口最大化的消息
SendMessage(m_hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0);
}
//这个函数是当有数据上来的时候,程序自动会调用这个函数.我发送这个消息使窗口最大化,可是没有反应。 这时我做了一个测试程序,我在一个基于对话框的程序上,放一个按钮,当单击这个按钮的时候,
SendMessage(m_hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0); 这个时候,窗口可以最大化
这个时候,我在我采集程序的这个函数里,void CCollData::OnSysCommand(UINT nID, LPARAM lparam) 这个函数
void CCollData::OnSysCommand(UINT nID, LPARAM lparam)
{
if((ID & 0xFFF0) == IDM_ABOUTBOX)
{
CAboutDlg dlgAbout;
dlgAbout.DoModal();
}
else if(nID == SC_MAXIMIZE)
{
ShowWindow(m_hwnd, SW_SHOW);
}
else if(nID == SC_MINIMIZE)
{
ShowWindow(m_hwnd, SW_MINIMIZE);
}
else
{
CDialog::OnSysCommand(nID, lparam);
}
}
这个时候,我的我的程序当有数据上来的时候,它会自动弹出最大化,但单击最小化按钮的时候,不能最小化窗口,就是最小化按钮没有作用。
{
//这是我接到数据后,发送的一个使窗口最大化的消息
SendMessage(m_hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0);
}
//这个函数是当有数据上来的时候,程序自动会调用这个函数.我发送这个消息使窗口最大化,可是没有反应。 这时我做了一个测试程序,我在一个基于对话框的程序上,放一个按钮,当单击这个按钮的时候,
SendMessage(m_hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0); 这个时候,窗口可以最大化
这个时候,我在我采集程序的这个函数里,void CCollData::OnSysCommand(UINT nID, LPARAM lparam) 这个函数
void CCollData::OnSysCommand(UINT nID, LPARAM lparam)
{
if((ID & 0xFFF0) == IDM_ABOUTBOX)
{
CAboutDlg dlgAbout;
dlgAbout.DoModal();
}
else if(nID == SC_MAXIMIZE)
{
ShowWindow(m_hwnd, SW_SHOW);
}
else if(nID == SC_MINIMIZE)
{
ShowWindow(m_hwnd, SW_MINIMIZE);
}
else
{
CDialog::OnSysCommand(nID, lparam);
}
}
这个时候,我的我的程序当有数据上来的时候,它会自动弹出最大化,但单击最小化按钮的时候,不能最小化窗口,就是最小化按钮没有作用。
解决方案 »
- GPS坐标如何转换成百度、谷歌地图坐标?
- 用什么api可以挂起一个进程当前的进程? 然后另一个进程如何能唤醒它? 假设我是admin用户
- CSocket 如何响应网络消息
- 求一个大素数的生成法(VC++)
- ShellExecute的调用,出的问题?
- 关于文档视图结构
- 又一个非常菜的问题,动态分配的二维数组如何释放内存
- 关于线程通信问题
- 请问如何将数组作为参数由VC的DLL返回到VB? 谢谢!
- 在VC中的CHtmlView中,当浏览一个网页中有“关闭窗口”按钮时,点击会关闭整个视,有什么办法屏蔽掉?急!!!!
- 请教一个非阻塞的WSAConnect的问题
- 向服务端sendto 一消息,但服务器读取不了这消息结构里的其中一个成员!!
::ShowWindow(m_hwnd,SW_RESTORE);试试