MDI, Как отловить нажатие 'Закрыть' - Сайт про программирование и программирование под linux
Программирование под linux, программирование, языки программирования, книги программирование На сайте представлена информация про программирование в Интернете и работу  

Иконку ассоциированную с файлом, как получить?
NURBS, Текстуры
С НОВЫМ ГОДОМ
Звуковая карта, Работа со звуковой картой в Делфи
MP3 в WAV
Звук в exe
Ошибка Tbitmap, Не могу понять
Таймер, Таймер
Как записать wav, Как записать wav из звуковой карты?
FixedPoint, ликвидация безграмотности
Модули, позволяющие на DELPHI работать со звуковой, Модули, позволяющие на DELPHI работать с
Ползунок d TrackBar, Как заставить его двигаться???
Диаграммы, Как с ними работать?
Програмка, Хелп..
Вызвать сообшение
Как Вы относитесь к курящим девушкам?
Печать графики
Текст, Вывод текста
я могу это сделать, сравнение массива
Mp3 теги, как получить mp3 теги
Выбор цветов, Как создать прямоугольник с палотрой
Цвета, Не меняются
Как повысить громкость програмно, Как повысить громкость програмно
TGraphicClass по расширению, как получить?
Графическое задание фигур
Вопрос по поводу открытия страниц через Delphi?
Работа с очень большими БМП
Изменение катинки..., ...Увеличение и т.д.
Как программно разложить AVI на картинки и обратно, ??????????
Изменить громкость
Как работает Transparent Color в TBitmap и TImage?, У меня что-то не работает.... :-(
Алгоритм огня и дыма
Наложить текстуру на Nurbs поверхность
Компонент для отображения Графов
Как построить круговую диаграмму в TCHART, (имея 4 параметра)
Шо це воно такэ
Работа с иконками, Каким образом задать прозрачный цвет ико
Работа с БМП, прозрачность
?: Программирование (encode) WMA, Source code of WAV to WMA encoding
Проблема с DGLut, Проблема с DGLut
Быстро сравнение изображений
Текстуры, Нужно натянуть текстуру на поверхность
Звук через бипер
Как издать звук спикером?, (если нет колонок, а надо оповестить)
Цветные рисования на DC, DirectX
Delphi+binkw32.dll, Кто знает нутро, помогите...
еще раз о Палитре, работа с палитрой изображения
Ping
Вопрос к RAdminy и ко всем
Загрузка текстуры, Почему-то не загружается???
Курсор, Помогите сделать курсор
DirectX, Отключить DirectDraw Acceleration
Как сделать прозрачность
оси в chart, разрывная и нормированная ось в chart
Как увеличить(растянуть) изображение
Остановить воспроизведение звука?
Курсор и "Пипетка", координаты курсора ицвет заданой точки
Рабочая точка курсора
прозрачний текст
MDI, Как отловить нажатие 'Закрыть'
Работаем с цветами
Как Вы относитесь к курящим девушкам?
Информация о видео файле, помогите, очень надо
24Bit преобразовать в 256, 16 и 2 цвета
Чёрно-белые изображения
Картинку вперед
Как можно включить сглаживание линий при, рисовании на канве?
OpenGL GluT, Проблемы
RichEdit Background, Помещение фонового рисунка в RichEdit
Как проиграть avi на весь экран, хочу пример.

Платные хостинги     Раскрутка сайта     Книги по программированию


MDI, Как отловить нажатие 'Закрыть'

Только здесь 1000 посетителей на Ваш сайт всего за 3 у.е.!

- В MDI приложении требуется отловить нажатие оконной кнопки 'Close' (окно MdiChild) и произвести какие-нибудь действия?Спасибо.

- Hi !   MDIChild как и любое другое окно имеет событие FormClose,   Его и надо обработать.Удачи.(пример выслал на мыло)

- Обрабатывай OnCloseQuery

- Спасибо, спасибо. Но я вообще-то "не первый год за мужем" OnClose и OnCloseQuery я проходил. У меня такая проблема: Дочернее окно может быть закрыто и другими способами (извне как бы). И вот на разные случаи должно происходить что-то разное, в том числе и в случае, когда я закрываю форму непосредственно через значок "закрыть". Проще говоря, есть на главной форме кнопка Button1 OnClick которой, ну скажем MDIChildForm.Close; Нажал я на кнопку и закрыл доч.форму (Action:=caFree) и получил сообщение 'Окно закрыто по кнопке Button1', а если я нажал значок на форме (ее оконную кнопку "закрыть"), то получил сообщение 'Окно закрыто системно' В общем в этом духе.

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

- Может, я чего-то недопонял, но при нажатии Button1 - OnClose а при нажатии "кнопки с крестиком" - OnCloseQuery. Почему бы не написать:Код procedure Form1.OnClose(...bla-bla..);beginApplication.MessageBox('You press a Button1', 'Test', 1);Close;end;Procedure Form1.OnCloseQuery (...bla-bla...);beginApplication.MessageBox('You press a "Krestik" :-)', 'Test', 1);CanClose:=True;end;highlightSyntax('delphimODJkM','delphi');

- Код procedure Form1.OnClose(...bla-bla..);beginApplication.MessageBox('You press a Button1', 'Test', 1);Close;end;Procedure Form1.OnCloseQuery (...bla-bla...);beginApplication.MessageBox('You press a "Krestik" :-)', 'Test', 1);CanClose:=True;end;highlightSyntax('delphiVhYjdj','delphi');Free ТАК НЕ ПОЙДЕТ!!!!!можешь сделать так или глобальную переменную, или через свойство form.tagпервоначально она равна 0Код procedure Form1.buttonclick();beginform.tag:=1;mdiform.close;end;procedure MdiForm.OnClose(...bla-bla..);beginIF form.tag=1  then Application.MessageBox('You press a Button', 'Test', 1)else Application.MessageBox('You press a other key', 'Test', 1);form.tag:=0;end;highlightSyntax('delphi1NTcxOT','delphi');Вроде должно работать  

- Вот решение касается не только MDI-формыtype TForm1=class(TForm).........protected    procedure WMSYSMESSAGE(var MSG:TMessage); message WM_SYSCOMMAND;.........procedure TChannelForm.WMSYSMESSAGE(var MSG:TMessage);begin  if MSG.WParam=SC_CLOSE then     ShowMessage('системная кнопка');  else inherited;end;отреагирует только тогда, когда будет нажата системная кнопка 'close';

- WM_SYSCOMMAND, очевидно

- WM_SYSCOMMAND отловит только ежели закрывать руками окно,лучше WM_DESTROY использовать, тогда везде отловишьДааа... надо с самого начала вопрос читать Админ, пожалуй удали это - ответ не по существу...

- Отлов WM_SYSCOMMAND предполагает отлов SC_CLOSE в качестве WParam, соответсвенно это событие возникает при любом закрытии будь то клавиатурой, будь то мышью или ещё как-то кроме как аварийном завершении соответсвующего процесса.Если Вы точно не знаете, не надо вводить людей в неправильную инфу и создавать подземный стук.

Интернет казино     Онлайн игры     Увеличение члена     Купить DVD


Главная страница | программирование модема | api программирование | чпу программирование | программирование шпаргалки | программирование 1232 | программированию ключей | программирование под linux | электронные учебники программирование | builder c программирование | языки программирования basic | метод динамического программирования | задачи нелинейного программирования | 1с программирование скачать | алгоритмические языки программирования | delphi 7 программирование | проект программирование | borland программирование | программирование pocket pc | кнут искусство программирования | программирование памяти | c программирование скачать | Ссылки

Все про проект программирование