私は自分のウィンドウハンドル(hwnd)からアプリケーションウィンドウをキャプチャし、ウィンドウ全体、トップレベルメニュー、およびスクロールバーをキャプチャするために使用できるGetWindowDC
を使用してデバイスコンテキストを取得しています。ウィンドウ、サブメニュー、コンテキストメニューのデバイスコンテキストを取得するにはどうすればよいですか?
HDC hdcWindow = GetWindowDC(hwnd);
HDC hdcMemDC = CreateCompatibleDC(hdcWindow); // or hdcScreen
たとえば、メモ帳の左上隅にある[ファイル]メニューでは、そのメニューはキャプチャされません。デバイスコンテキストに含まれていないようです。アプリケーションウィンドウを持つすべてのデバイスコンテキストを取得する方法はありますか?
ディスプレイDC(GetDC(NULL))を取得し、BitBltにウィンドウの矩形 –
@AlexKを取得する必要があります。技術的には、ポップアップメニューはウィンドウの矩形の外側に広がることができます。 –
こんにちはアレックス、それはかなりうまくいきます、ありがとう。 – Anton