Vista および Windows 7 でタスク バーを非表示にしても、スタート ボタン (スタート オーブとも呼ばれます) は非表示になりません。これに対する解決策を探していて、見つけましたが、必要以上に複雑に思えます。このCodeProject 記事では、スタート メニューを含むプロセス内のすべてのスレッドのすべての子ウィンドウを列挙するソリューションについて説明 (およびそのコードを含む) します。
誰かがより簡単な解決策を見つけましたか?
参考までに。(Orb を非表示にせずに) タスク バーを非表示にするコードは次のとおりです。まず、必要な Win32 のインポートと宣言を行います。
[DllImport("user32.dll")]
private static extern IntPtr FindWindow(string className, string windowText);
[DllImport("user32.dll")]
private static extern int ShowWindow(IntPtr hwnd, int command);
private const int SW_HIDE = 0;
private const int SW_SHOW = 1;
次に、どこかのメソッドで、正しい引数でそれらを呼び出します
IntPtr hwndTaskBar = FindWindow("Shell_TrayWnd", "");
ShowWindow(this.hwndTaskBar, SW_HIDE);