在Windows CE 5中的可见应用程序之间切换,Lang:C++

Switching between visible applications in Windows CE 5, Lang: C++

本文关键字:之间 Lang C++ 应用程序 CE Windows      更新时间:2023-10-16

我是嵌入式编程的老手,但对CE来说是新手,在做简单的事情时遇到了很多困难,因为我不熟悉API,很难理解模糊不清的MSDN文档。

我所想做的就是最小化和最大化从其中一个应用程序运行的两个独立的应用程序。

例如,应用程序A决定现在是它出现的时候了,然后最小化应用程序B(应用程序B是第三方应用程序,例如记事本,无法访问源代码等),然后在稍后阶段最大化B并最小化自身。

申请表A将由我自己编写。

我相信这一定很简单,但在哪里可以找到答案…:)

提前谢谢。EOI

首先,您需要使用FindWindow API函数或其他方法来定位窗口句柄(hwnd)。接下来,使用ShowWindow API函数指定SW_HIDESW_SHOW以分别隐藏或显示窗口。请注意,Windows CE 5.0在技术上不支持Win32窗口状态,如SW_MINIMIZE、SW_MAXIMIZE等。

一个简单的例子是:

HWND hWnd = ::FindWindow( _T("Notepad"), NULL); 
::ShowWindow(hWnd, SW_HIDE); 

您可能还发现SetForegroundWindow和SetWindowPos很有用。

这就是我使用它们来显示和隐藏应用程序的方式:

SetWindowPos(windowToHide, 0, 0, 0, 0, 0, SWP_HIDEWINDOW);
SetWindowPos(windowToShowInFullScreen, HWND_TOP, 0, 0, 240, 320, SWP_SHOWWINDOW);
SetForegroundWindow(windowToShow);