Umka |
Отправлено: 03.12.2003, 20:41 |
|
Дежурный стрелочник
Группа: Участник
Сообщений: 32
|
Подскажите, пожалуйста, как убрать TaskBar с экрана, а потом показать его.
|
|
Admin |
Отправлено: 04.12.2003, 17:32 |
|
Владимир
Группа: Администратор
Сообщений: 1190
|
CODE |
// Убираем/показываем все стартовые меню
void __fastcall TFMain::DisableAllMenus(bool val)
{
const int iMax = 10;
HWND hWnd[iMax];
ZeroMemory(&hWnd, sizeof(HWND)*iMax);
hWnd[0] = FindWindow("Shell_TrayWnd", NULL); // Панелька внизу
hWnd[1] = FindWindowEx(hWnd[0], NULL, "Button", NULL); // Кнопка пуск
hWnd[2] = FindWindowEx(hWnd[0], NULL, "ReBarWindow32", NULL); // Панель левее кнопки пуск
hWnd[3] = FindWindowEx(hWnd[2], NULL, "ToolbarWindow32", NULL); // Quick Launch
hWnd[4] = FindWindowEx(hWnd[2], NULL, "MSTaskSwWClass", NULL); // Панель, там где минимизированные окна и т.п.
hWnd[5] = FindWindowEx(hWnd[0], NULL, "TrayNotifyWnd", NULL); // Весь трэй
hWnd[6] = FindWindowEx(hWnd[5], NULL, "Button", NULL); // Баттон для показа скрытых иконок в ХР
hWnd[7] = FindWindowEx(hWnd[5], NULL, "SysPager", NULL); // Эээ, сами иконки прог в систрее
hWnd[8] = FindWindowEx(hWnd[5], NULL, "TrayClockWClass", NULL); // Часики
hWnd[9] = FindWindow("Progman", NULL); // рабочий стол
// hide — show window
for (int i=0; i<iMax; i++)
{
if(val) ShowWindow(hWnd[i], SW_HIDE);
else ShowWindow(hWnd[i], SW_SHOW);
}
}
//--------------------------------------------
|
К сожалению, такой красивой картинки приложить не нашел.
|
|
Иван |
Отправлено: 04.12.2003, 19:32 |
|
Машинист паровоза
Группа: Участник
Сообщений: 207
|
Task Bar можно убрать и так:
CODE |
HWND H;
H=FindWindow("Shell_TrayWnd",NULL); //Находим handle окна Task Bar'а
ShowWindow(H,SW_HIDE); //Делаем его невидимым
Sleep(2000);
ShowWindow(H,SW_SHOW); //Делаем его видимым
|
P.S. картинка действительно красивая
Отредактировано Иван — 04/12/2003, 20:36
|
|
** pasha |
Отправлено: 04.12.2003, 20:32 |
|
Не зарегистрирован
|
Вообще-то Admin так и написал
CODE |
...
hWnd[0] = FindWindow("Shell_TrayWnd", NULL); // Панелька внизу
...
ShowWindow(hWnd[i], SW_HIDE);
...
|
просто несколько расширил ответ для общего образования.
|
|
Umka |
Отправлено: 05.12.2003, 13:23 |
|
Дежурный стрелочник
Группа: Участник
Сообщений: 32
|
СПАСИБО БОЛЬШОЕ !!!
Отредактировано Admin — 05/12/2003, 19:16 |
|
|