読者です 読者をやめる 読者になる 読者になる

ゆるふわエンジニアのブログ

やったこと、調べたこと等をつらつらと書いていくかもしれません。

Alt+Tab押下時のメニューにFormを表示させなくする方法(.Net)

Alt+Tab押下時のメニューにFormを表示させなくする方法です。
下記条件を満たすと、Alt+Tab押下時のメニューにFormに表示されなくなります。

1. タスクバーに表示させなくする
2. 拡張ウィンドウスタイルにWS_EX_TOOLWINDOWを指定する

それぞれ設定、実装方法のサンプルコード(C#)は下記の通りです。


1. タスクバーに表示させなくする

Form f = new Form();

f.ShowInTaskbar = false; //デザイナ上からも設定可


2. 拡張ウィンドウスタイルにWS_EX_TOOLWINDOWを指定する

// Formクラス内に実装
const int WS_EX_TOOLWINDOW = 0x00000080;
protected override CreateParams CreateParams
{
    get
    {
        CreateParams cp = base.CreateParams;
        cp.ExStyle = cp.ExStyle | WS_EX_TOOLWINDOW;
        return cp;
    }
}


追記
上記の2について、Formのプロパティを設定することでも対応可能でした。
コードは下記の通り。

Form f = new Form();

f.FormBorderStyle = FormBorderStyle.FixedToolWindow; //サイズ変更不可
f.FormBorderStyle = FormBorderStyle.SizableToolWindow; //サイズ変更可