Главная страница
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.009 c
4-1204227658
Still Swamp
2008-02-28 22:40
2009.01.18
Как можно изменить значение clBtnFace?


2-1228133156
dymok
2008-12-01 15:05
2009.01.18
SQL.Text сохранить в файл


1-1200230813
Fixi4eeG
2008-01-13 16:26
2009.01.18
Всплывающее окошко/подсказка из трея


1-1206530639
Igor_34
2008-03-26 14:23
2009.01.18
документ Word и компонент WebBrowser


2-1228165884
aKor
2008-12-02 00:11
2009.01.18
TDBChart