seclan のほえほえルーム

| |

・タスクバーへのウィンドウ表示の動的切り替え (1999/08/04 [])
 ウィンドウを使ったアプリケーションを起動するとタスクバーにそのウィンドウを示すタイトル部分が表示されます。しかし、タスクバーに表示したくないウィンドウを作成したい時もあります。そのような時には、拡張スタイルに WS_EX_TOOLWINDOW を指定してウィンドウを作成すると表示されません。
 さらに、始めはタスクバーに表示されているけど、あるきっかけで非表示にしたい、あるいは、逆に始めは非表示だけど、あるきっかけで表示したいということが考えられます。そのような時には、動的に表示を切り替える必要があります。そのやり方の一つとして次の方法があります。hwnd はそのウィンドウのウィンドウハンドルを示します。

//非表示にする場合
ShowWindow(hwnd, SW_HIDE);
SetWindowLong(hwnd, GWL_EXSTYLE, GetWindowLong(hwnd, GWL_EXSTYLE) | WS_EX_TOOLWINDOW);
ShowWindow(hwnd, SW_SHOW);

//表示する場合
ShowWindow(hwnd, SW_HIDE);
SetWindowLong(hwnd, GWL_EXSTYLE, GetWindowLong(hwnd, GWL_EXSTYLE) & ~WS_EX_TOOLWINDOW);
ShowWindow(hwnd, SW_SHOW);

 ただしこのとき、タイトルバーの太さが変化するのでその点を注意する必要があります。

by seclan

関連


| |

 

配信

24.59 msec