Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Система";
Текущий архив: 2003.04.28;
Скачать: [xml.tar.bz2];

Вниз

Как программно свернуть все окна?   Найти похожие ветки 

 
BaDeVlad   (2003-03-06 19:22) [0]

Есть такая команда, по умолчанию в 98 винде в КвикЛанче торчит. Как ее программно сделать?


 
AlexRush   (2003-03-06 20:05) [1]

My_EnumWindowsProc(hWnd:DWORD;param:LPARAM):BOOL;stdcall;
begin
CloseWindow(hWnd);// минимизирует окно
end;

procedure MinimizeAllWindows;
begin
EnumWindows(@My_EnumWindowsProc,0);
end;


 
Anatoly Podgoretsky   (2003-03-06 20:10) [2]

Эта кнопка связана с командным файлом для проводника
Смотри в реестре ключ SHCmdFile
По идее ты можешь запустить этот файл с помощью ShellExecute


 
Lord Warlock   (2003-03-07 10:05) [3]


> AlexRush © (06.03.03 20:05)


Уважаемый, видел бы ты, как твой код глюканул...


 
Lord Warlock   (2003-03-07 10:12) [4]


> BaDeVlad


Я недели 3 назад писал как сделать тоже самое, но ветки уже нет.

Идея была в импорте библиотеки Shell32.dll, и дальнейшем вызове ее методов, в том числе и MinimizeAll. Впрочем вариант
Anatoly Podgoretsky © не исключается.


 
Anatoly Podgoretsky   (2003-03-07 10:12) [5]

А ты чего оиждал от этого, он же безоговорочно закрывает окна, не скрывает, не минимизирует, а именно закрывает все подряд. Надеюсь не сильно систему порушил.


 
Юрий Зотов   (2003-03-08 11:43) [6]

>Lord Warlock © (07.03.03 10:05)
>> AlexRush © (06.03.03 20:05)
>> Уважаемый, видел бы ты, как твой код глюканул...

Он не глюканул. Он абсолютно честно и абсолютно точно выполнил абсолютно то, что Вы и хотели - свернул ВСЕ окна. Все подряд, без разбора. Каков вопрос - таков ответ.

Чуть-чуть подправьте:

My_EnumWindowsProc(hWnd:DWORD;param:LPARAM):BOOL;stdcall;
begin
if IsWindowVisible(hWnd) then CloseWindow(hWnd)
end;


 
Романов Р.В.   (2003-03-08 14:12) [7]

Lord Warlock © (12.02.03 16:08)
Если хорошо порыться, все можно найти :)

1. в меню Project выбираем ImportTypeLibrary, говорим Add, лезем в каталог виндов\System32 и находим файл Shell32.DLL, он добавляется в список. Говорим CreateUnit, появряется Shell32_TLB.pas,
2 В программе пишем uses Shell32_TLB; и далее
var f:TShell;
begin
f:=TShell.Create(nil);
f.MinimizeAll;
end;

ЗЫ Сделал минут за 5, может быть криво работать под разными виндами, специально не выяснял


 
Diamond Cat   (2003-03-08 15:44) [8]

2 Anatoly Podgoretsky, функция Closewindow не закрывает а минимизирует окна.
2 Юрий Зотов, есть еще окна которые не видны лишь потому что они не имеют размера, это проверить тоже надо.
Возможно лучше проверять имеют ли окна закладку в панели задачь через Getwindowlong


 
Song   (2003-03-08 15:57) [9]

Да просто Win+M симулировать.


 
GROL   (2003-03-10 20:07) [10]

Вы смотрели свойства той "пымпочки"?

там ссылка на scf файл такого содержания:
[Shell]
Command=2
IconFile=explorer.exe,3
[Taskbar]
Command=ToggleDesktop


Я просто, создаю свой такой файл, делаю ShellExecute, и убиваю его, а винда там сама пускай разберается кого куда.



Страницы: 1 вся ветка

Форум: "Система";
Текущий архив: 2003.04.28;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.013 c
8-91414
El Macho
2003-01-25 22:50
2003.04.28
Уровень громкости звука!


4-91583
Андрусь
2003-02-26 16:58
2003.04.28
как для сервиса узнать путь к exe файлу


9-91135
drhdh
2002-11-17 18:05
2003.04.28
RPG


7-91566
Demon
2003-03-11 18:11
2003.04.28
Указатель на 16-разрядный процесс


3-91181
АндрейБ
2003-04-09 14:06
2003.04.28
Номер записи в TTable





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский