MFC ウィンドウ表示しないウィンドウ(メッセージ・ウィンドウ)の作り方。

このメッセージ・ウィンドウは、メッセージを受け取るためだけのウィンドウ・ハンドルです。
画面にウィンドウを表示することはありません。
クラスとして構築することも出来るんですが、今回はお手軽にハンドルだけを手に入れる方法を解説します。

 // クラス名を得る。
 LPCTSTR pClassName = AfxRegisterWndClass(NULL);
 // ウィンドウハンドルを得る。
 HWND hMsgWnd = CreateWindowEx(0, pClassName, NULL, WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, HWND_MESSAGE, NULL, NULL, NULL); 
 if( hMsgWnd == NULL ) { // エラー?
  // ハンドルが取得できません。
 }


実にシンプルですが、これでウィンドウ・ハンドルが得られます。
あとは、このウィンドウ・ハンドルをメッセージ受け取り先にしてPeekMessageで監視するなど色々と使えると思います。需要の多いテクニックじゃないですが、お役に立てば幸いです。

もし役に立ったら、コメントか拍手をお願いします。
でわでわ。

2008/10/20 | プログラミングCOMMENT(0)TRACKBACK(0)  TOP

コメント

コメントの投稿



管理者にだけ表示を許可する

 | BLOG TOP |