Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.09.25;
Скачать: CL | DM;

Вниз

Свернуть все окна + Shell32.dll   Найти похожие ветки 

 
Darmidon   (2005-08-30 11:33) [0]

Мне нужно программно свернуть все окна, как это делается клавишами Win+D. Т.е. чтобы сворачивались именно все окна, а не только те, которые "могут свернуться".

Покапавышись в интернете, нашел следующие (C++):

In short, if you want to programmatically show the desktop (tile windows, minimize all windows, run explorer, browse for folders, or any other numerous shell functionality exposed by this object use the following code), set a reference to shell32.dll and use the following code (C#):

// Create an instance of the shell class
Shell32.ShellClass objShel = new Shell32.ShellClass();
               
// Show the desktop
((Shell32.IShellDispatch4) objShel).ToggleDesktop();
               
// Do some operations here

// Restore the desktop
((Shell32.IShellDispatch4) objShel).ToggleDesktop();

Как это записать на Delphi?


 
dmitry501 ©   (2005-08-30 11:47) [1]

В меню Project\Import Type Library
Выберите Microsoft Shell Controls & Automation (version 1.0).
из вкладки ActiveX перетащите на форму компонент TShell.
После этого, например, можно всё минимизировать:
Shell1.MinimizeAll
или показываем диалоговое окошко Run
Shell1.FileRun
ну там много еще чего есть...


 
kblc ©   (2005-08-30 11:48) [2]

Вот кажется так это пишется на делфи:

var
 objShel: IShellDispatch4;
begin
 objShel:=CreateOleObject("Shell32.ShellClass") as IShellDispatch4;
 objShel.ToggleDesktop();

// Do some operations here

 objShel.ToggleDesktop();
end;


 
Darmidon   (2005-08-30 12:01) [3]

Толко где взять IShellDispatch4?


 
kblc ©   (2005-08-30 12:04) [4]

Почитай справку!


 
Darmidon   (2005-08-30 12:06) [5]

Кому интересно посылает сообщение эквивалентное WIN+D:

PostMessage(FindWindow("Shell_TrayWnd", nil), $0111, 407, 0); // WM_COMMAND = $0111


 
Darmidon   (2005-08-30 12:07) [6]

Где именно читать? У меня Delphi 6, не могу там найти.



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

Текущий архив: 2005.09.25;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.079 c
4-1123009263
Михаил(Киров)
2005-08-02 23:01
2005.09.25
Иконки на панели индикаторов


14-1125014136
программер__
2005-08-26 03:55
2005.09.25
Научиться играть на пианино


8-1115882168
Vadim68
2005-05-12 11:16
2005.09.25
Как правильно сохранить битмап?


14-1125252689
Twister1222
2005-08-28 22:11
2005.09.25
Сомнения Delphi2005


3-1123259807
Оран Гутангович
2005-08-05 20:36
2005.09.25
could not convert variant of type(Null) into type (String)