|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
21.03.2008, 16:21 | #1 |
Форумчанин
Регистрация: 23.09.2007
Сообщений: 147
|
Странное закрытие
Когда кликаю на кнопке закрыть второстепенного окна своей проги или жму ALT+F4, то, понятно дело, убивается только окно, а если в контекстном меню на панели задач на иконке окна нажать закрыть, то убивается все приложение. Отчего может такое происходить?
Я надеваю тапочки, ищу чем похмелиться, ах, если я сейчас умру, то на... я родился
|
21.03.2008, 16:54 | #2 |
Форумчанин
Регистрация: 26.04.2007
Сообщений: 143
|
Скорее всего при закрытии второстепенного окна, ссылаясь на handle окна его же и закрвает, а в панели задач при нажатии на закрыть он образно говоря выполняет application.terminate;
Поэтому объясни что именно ты хочешь получить в результате закрытия того и другово???
Свободу клавиатурным самураям...
|
23.03.2008, 16:14 | #3 |
Форумчанин
Регистрация: 23.09.2007
Сообщений: 147
|
получается, что при нажатии закрыть на панели задач главному окну приложения отправляется сообщение о закрытии, а не отдельно второстепенному окну, связано ли это с архитектурой VCL или система отправляет родителю окна сообщение о закрытии
конечно, в моем случае я могу избавится от этого, просто помимо проверки скрыто ли главное окно во время отправки сообщения о закрытии проверять еще и второстепенные формы, но хотелось бы узнать, отчего это вообще зависит пожалуйста, код в студию
Я надеваю тапочки, ищу чем похмелиться, ах, если я сейчас умру, то на... я родился
|
23.03.2008, 16:48 | #4 |
Новичок
Джуниор
Регистрация: 18.01.2008
Сообщений: 1,720
|
Какой код!!??. При чём здесь VCL! Эксплорер отправляет главному окну (вполне естественно, что его не заботит количество дочерних окон в неизвестных ему приложениях) WM_SYSCOMMAND с параметром SC_MOUSEMENU и координатами своей кнопки. Всё! Вы чего сделать-то хотите?
|
24.03.2008, 03:50 | #5 |
Форумчанин
Регистрация: 23.09.2007
Сообщений: 147
|
вот именно, это я и хотел узнать, теперь хотелось бы узнать разные способы, как с этим бороться
Я надеваю тапочки, ищу чем похмелиться, ах, если я сейчас умру, то на... я родился
|
24.03.2008, 11:14 | #6 |
я получил эту роль
Старожил
Регистрация: 25.05.2007
Сообщений: 3,694
|
Убрать из меню пункт "Закрыть Alt+F4"
пыщь
|
25.03.2008, 05:11 | #7 |
Форумчанин
Регистрация: 23.09.2007
Сообщений: 147
|
Код:
Я надеваю тапочки, ищу чем похмелиться, ах, если я сейчас умру, то на... я родился
|
25.03.2008, 10:44 | #8 | |
Новичок
Джуниор
Регистрация: 18.01.2008
Сообщений: 1,720
|
Цитата:
Во-первых, wParam в WM_SYSCOMMAND надо маскировать с 0xFFF0 - младшие четыре бита Windows использует по своему усмотрению. Во-вторых, Зачем Вам само меню-то? Нужно или WM_SYSCOMMAND:SC_CLOSE или проще WM_CLOSE для главного меню проверять. (Ещё не понял, при чём здесь Visible?) В-третьих, я тоже поторопился, забыл уже, что эксплорер отправляет не WM_SYSCOMMAND, а 0x313, которое MS не документирует и берёт меню "живьём", но этот момент тоже можно перехватить через WM_INITMENU |
|
26.03.2008, 03:21 | #9 | |
Форумчанин
Регистрация: 23.09.2007
Сообщений: 147
|
Цитата:
поменял SC_MOUSEMENU на SC_CLOSE, но ни фига Код:
потом перепробовал все варианты микширования SC_CLOSE c $FFF0 и с WParam, но ниче не вышло, покажите как конкретно от этого избавиться, иначе я просто не пойму
Я надеваю тапочки, ищу чем похмелиться, ах, если я сейчас умру, то на... я родился
|
|
26.03.2008, 11:58 | #10 |
Новичок
Джуниор
Регистрация: 18.01.2008
Сообщений: 1,720
|
joker, я не знаю, что Вы делаете и от чего собираетесь избавиться. Что за окно Form1, при чем здесь visible и т.п. WM_SYSCOMMAND проверяется например так:
Код:
|
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Че-то странное .... | ~Brilliant~ | Безопасность, Шифрование | 9 | 27.04.2009 13:57 |
закрытие вкладки в TTabControl | Shade | Помощь студентам | 3 | 06.02.2009 13:10 |
Закрытие программы | Zloy_Doomer | Общие вопросы Delphi | 3 | 23.06.2008 19:08 |
Странное поведение ПОИСКПОЗ | ZORRO2005 | Microsoft Office Excel | 5 | 19.05.2008 14:02 |
Закрытие приложения | Лёка | Общие вопросы Delphi | 7 | 09.03.2008 15:50 |