タスクバーにアイコンを表示させない

タスクバーにアイコンを表示させたくない時の方法。
ウィンドウ作成時に拡張スタイルを指定して、 ツールウィンドウとして作成すればよし
    // ウィンドウ作成時に拡張スタイルを指定する
    HWND hWnd = CreateWindowEx(WS_EX_TOOLWINDOW | … | ……);

MFCの場合、PreCreateWindow()で拡張スタイル指定する
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
    // 拡張スタイルにツールウィンドウを追加
    cs.dwExStyle |= WS_EX_TOOLWINDOW;
    return CFrameWnd::PreCreateWindow(cs);
}

もちろん、リソースエディタでウィンドウを作成する時に ツールウィンドウを指定してもよし。

途中で消したい場合、拡張スタイルを変更すればよし
    // 一旦隠す
    ShowWindow(hWnd,SW_HIDE);
    // 拡張ウィンドウスタイルの取得
    LONG lExStyle = GetWindowLong(hWnd,GWL_EXSTYLE);
    // ツールウィンドウの指定追加
    lExStyle |= WS_EX_TOOLWINDOW;
    // 新しい拡張スタイルの設定
    SetWindowLong(hWnd,GWL_EXSTYLE,lExStyle);
    // ウインドウの表示
    ShowWindow(hWnd,SW_SHOWNORMAL);

(Aug 26,2002)
Previous<<   ∧index   >>Next
Back to home
メールはこちらから