Панель задач

We use cookies. Read the Privacy and Cookie Policy

Панель задач

Очень часто программисты в качестве шутки создают программы, которые прячут привычные для пользователя элементы интерфейса. В предыдущем примере было показано, как можно скрыть кнопку Start. Теперь нужно рассмотреть пример работы с панелью задач.

Для создания тестового приложения на форме надо разместить две кнопки. Одна из них будет скрывать панель задач, а вторая — показывать ее. Соответствующий код приведен в листинге 13.7.

Листинг 13.7

/// <summary>

/// Скрывает одно окно и активирует другое

/// </summary>

private const int SW_HIDE = 0;

/// <summary>

/// Активирует окно

/// </summary>

private const int SW_SHOW = 5;

[DllImport("coredll.dll")]

private static extern IntPtr FindWindow(string ClassName, string WindowName);

[DllImport("coredll.dll")]

private static extern bool ShowWindow(IntPtr hwnd, int nCmdShow);

/// <summary>

/// Прячем панель задач, чтобы пользователь не мог

/// нажать кнопку Start

/// </summary>

public static void HideTaskbar() {

 IntPtr h = FindWindow("HHTaskBar", "");

 ShowWindow(h, SW_HIDE);

}

/// <summary>

/// Показывает панель задач

/// </summary>

public static void ShowTaskBar() {

 IntPtr h = FindWindow("HHTaskBar", "");

 ShowWindow(h, SW_SHOW);

}

private void butHideTaskbar_Click(object sender, EventArgs e) {

 HideTaskbar();

}

private void butShowTaskbar_Click(object sender, EventArgs e) {

 ShowTaskBar();

}

На самом деле с помощью функций FindWindow и ShowWindow можно показывать и скрывать не только панель задач, но и окна других приложений.