- ベストアンサー
ダイアログボックスのタスクバーアイコンを表示するには
BCC32で、C言語によりWin32 APIを用いたプログラムを勉強しております。 DialogBox()を使用すれば、ウィンドウ上に配置した各種コントロールのキーボード操作をWindowsに任せられて楽なので、メインウィンドウを非表示にして、ダイアログボックスによるアプリケーションを作っています。 ただし、この場合、タスクバーにアイコンが表示されません。 DialogBox() で作成したウィンドウについて、タスクバーにアイコンを表示させることは可能でしょうか? また、どのようにすれば良いでしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
>(そうしないと、タスクバーでのアプリケーションの切り替えが出来ないので) これオンリーで判断しました。 ダイアログボックスに拡張スタイル WS_EX_APPWINDOW を追加しましょう。
その他の回答 (1)
- YukiHanabi
- ベストアンサー率46% (6/13)
開発環境が違いますが、 HICON hIcon として、 WM_INITDIALOL のメッセージ処理で、LoadIcon などの関数でアイコンを読み込み SendMessage( hdwnd, WM_SETICON, ICON_SMALL, ( LPARAM )hIcon ); で多分表示されると思いますが環境が違うので参考程度のないようです。 Visual C++ ようですが以下 http://www17.plala.or.jp/page-zero/programming-w05.html
補足
回答ありがとうございます。 ご指摘の内容は、「タイトルバー」にアイコンを表示する方法ですよね。 今実現したいのは、「タスクバー」にアイコンを表示するということです。(そうしないと、タスクバーでのアプリケーションの切り替えが出来ないので) 何かご存じでしたら、お教え頂ければと思います。
お礼
EXSTYLE WS_EX_APPWINDOW で解決しました。 ありがとうございます。 なお、他の掲示板で得た別解として、DialogBox()の第3引数にNULLを指定して、トップレベルウィンドウにする、というものもありました。