![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
![]() Друзья! Помогите чем сможете)))))
Есть модальная форма, на ней поля для ввода данных и кнопка "Сохранить". Вопросы: 1)Как отследить какая кнопка была нажата, кнопка "Сохранить" или "крестик" на форме? Мне это необходимо для того, чтобы при нажатии на кнопку "Сохранить" данные просто сохранялись и форма закрывалась. А при нажатии на "крестик", при наличии изменений в полях ввода, выдавалось сообщение "Хотите сохранить сделанные изменения?" (Да, Нет) 2)Как сделать проверку в поле ввода, что данные были изменены. Заранее Спасибо! |
#2
|
||||
|
||||
![]() У кнопки есть такое свойство ModalResult. А функция ShowModal возвращает этот самый ModalResult. Остается только проверить по выходе из модальной формы что нам она вернула.
Код:
if MyForm1.ShowModal = mrOk then begin //Проверяем, введены ли новые значения и по необходимости Сохраняем end; Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#3
|
|||
|
|||
![]() Хочу дополнить ответ Страдальца,
что бы метод ShowModal возвращал mrOk или скажем mrCancel, у кнопок надо установить значение ModalResult в mrOk или mrCancel соответственно. |
#4
|
||||
|
||||
![]() Цитата:
![]() Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#5
|
|||
|
|||
![]() Код:
if MyForm1.ShowModal = mrOk then begin //Проверяем, введены ли новые значения и по необходимости Сохраняем end; Это понятно, но мне нужно не для кнопки "Сохранить", а для "крестика". Как узнать что был нажат именно "крестик"? |
#6
|
||||
|
||||
![]() Перехватываешь событие WM_SYSCOMMAND далее через lParam и wParam определяешь действие:
SC_CLOSE нажат "крэстик" SC_MINIMIZE нажата конпка свертывания Ну и т.д. — Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#7
|
|||
|
|||
![]() Спасибо, помогло
|
#8
|
||||
|
||||
![]() Омг, извиняюсь, зачем такая колбаса? У формы ж вроде есть параметр ModalResult, который передаётся по умолчанию (если не нажата никакая кнопка, а форма закрывается)... Или я туплю?
Оставайтесь хорошими людьми... VK id2634397, ds [at] phoenix [dot] dj |