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

Вниз

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

 
TStas ©   (2008-12-03 14:36) [0]

Есть программа, в которой данные показываются в модальных окнах, а из них можно открыть другие модальные окна с данными. Получается много модальных окон. Чтобы свернуть главное окно, приходится всё закрывать, что не удобно. Что нужно сделать, чтобы всё свернулось, как при нажатии на кнопку "Свернуть все окна"? Пробовал посылать главному окну сообщение - не помогло.


 
Jeer ©   (2008-12-03 14:38) [1]

Вероятно - корявый подход к проектированию, если модальных окон требуется как грибов в урожайный год.


 
TStas ©   (2008-12-03 14:45) [2]

Да нет. Программа всем хороша: для себя писалась и пользуюсь ей почти три года. Просто данные такие, что одни ссылаются на другие, а те на третьи и т. д. И в таблице их не покажешь, т. к. в модальных окнах я отображаю детализацию. С программой все в порядке. Просто если глубоко в данные зарыться, то сворачивать не удобно. Это не принципиально, просто мне интересно, как это сделать и почему не помогла посялка сообщения главному окну. Точнее, догадываюсь. Но как-то же делает это виндовая кнопка на понеле задач.


 
clickmaker ©   (2008-12-03 14:49) [3]

а как и какое посылаешь главному окну?


 
Anatoly Podgoretsky ©   (2008-12-03 14:53) [4]

Сообщения посылаются в очередь, а у модального окна она своя.


 
TStas ©   (2008-12-03 15:04) [5]

Я посылал минимайз главному окну. Чтобы привести код, его нужно искать. Если дело в сообщеннии, то, возможно, простая опечатка. Я вообще этим вопросом озадачился вчера перед сном.
Да, у модального окна очередь сообщений, конечно, своя. Я пытался кнопкой, находящейся на модальном окне, послать сообщение минимайз главного окну через SendMessage


 
Rouse_ ©   (2008-12-03 15:04) [6]

Application.Minimize;


 
TStas ©   (2008-12-03 15:19) [7]

Розыч! Ну какой же ты, всё-таки, умный. Вот именно! Я какое-то не то слал сообщение. :)


 
Vayrus   (2008-12-03 15:51) [8]

Лови халяву:

procedure MinimizeAllWindows;
begin
 keybd_event(VK_LWIN, MapVirtualKey(VK_LWIN, 0), 0, 0);
 keybd_event(Ord("M"), MapVirtualKey(Ord("M"), 0), 0, 0);
 keybd_event(Ord("M"), MapVirtualKey(Ord("M"), 0), KEYEVENTF_KEYUP, 0);
 keybd_event(VK_LWIN, MapVirtualKey(VK_LWIN, 0), KEYEVENTF_KEYUP, 0);
end;



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

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

Наверх




Память: 0.48 MB
Время: 0.012 c
2-1228221610
givi
2008-12-02 15:40
2009.01.18
Имя ПК


8-1189345084
SysError
2007-09-09 17:38
2009.01.18
Как создать и cохранить MIDI


2-1228662640
алгоритм
2008-12-07 18:10
2009.01.18
подстакажите алгоритм нахождения точки


2-1228747542
Lamer6666
2008-12-08 17:45
2009.01.18
Колличество выделенных записей в DBGrid


2-1228392234
linx
2008-12-04 15:03
2009.01.18
Лишние знаки после запятой при отображ. результ. запр.в DBGreed