0

私はMFCが初めてです。MFCを使用して個別のウィンドウを処理する方法を教えてください。私の仕事は、別々のウィンドウのスクリーンショットを撮ることであり、それを表示したいと考えています。使用CWnd::GetDesktopWindowすることで、デスクトップ用のハンドルを取得します。他のウィンドウのハンドルを取得したい場合は、どうすれば取得できますか。キャプチャしたデスクトップを表示したい場合は、デスクトップのハンドルを取得しました。誰か助けてください。

4

2 に答える 2

1

取得するウィンドウの種類によって異なります。クラス名またはキャプションが指定されているウィンドウを取得するには、class&caption を入力として API FindWindow(...) を使用してください。デスクトップまたは最上位ウィンドウの下にあるすべての子ウィンドウを取得するには、再帰関数で EnumWindows(...) を使用できます。

于 2012-09-20T07:10:26.037 に答える
0

デスクトップ上のすべてのウィンドウのハンドルを取得するには、関数EnumWindowsが必要です。

コールバック関数を提供すると、見つかった各ウィンドウへのハンドルを使用して呼び出されます。

CWnd*からMFC を取得するには、次のHWNDようにします。

CWnd *const window = CWnd::FromHandle(hWnd);
于 2012-09-21T13:04:42.013 に答える