|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
17.06.2013, 08:04 | #11 |
Участник клуба
Регистрация: 12.09.2012
Сообщений: 1,030
|
-if then else
-Не, нет. Не слышал!
Что нужно программисту: Компьютер, Среда программирование, Воображение, Прямые руки, Мозги, Знания этой среды программирования.
Программист-это профессия, а программирование-это моё хобби. |
17.06.2013, 08:07 | #12 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
А может у тебя где-то еще какой нить выход прописан?
Или это не главная форма приложения? Цитата:
Автор все делает правильно.
I'm learning to live...
|
|
17.06.2013, 08:14 | #13 |
Регистрация: 31.03.2012
Сообщений: 9
|
Первая форма у меня сплеш-скрин сделана. Потом она SplashForm.Free, а Форма 1 создается. И работаю тогда уже из первой формы со всеми остальными.
Присутствует еще : Код:
Или не так я думаю? Я правильно сообразил. Получается если нажать на крестик (закрыть приложение) то код отрабатывает как нужно - выскакивает вопрос "Закрыть программу?", "Да", "Нет". ДА - закрывает, Нет - продолжается работа приложения. Но если нажать на эту кнопку (Выход), то код отрабатывает не правильно - если нажать на "Нет" заместо продолжения работы приложения оно закрывается так же как и при "Да". Как сделать что б он и на нажатие кнопки "Выход" нормально реагировал? Последний раз редактировалось Stilet; 17.06.2013 в 08:35. |
17.06.2013, 11:45 | #14 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Убери Application.Terminate;
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
17.06.2013, 23:15 | #15 |
t45t
Участник клуба
Регистрация: 20.03.2012
Сообщений: 1,849
|
В событие OnCloseQuery вашей формы:
Код:
from dark to light)
|
17.06.2013, 23:22 | #16 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,426
|
Чтобы пропускать выход из ОС, но не закрытие ПО юзером:
Ловим WM_QUERTYENDSESSION сообщение, Ставим некую глобальную переменную IsOSShuttingDown в True, затем в OnCloseQuerty собитии делаем такую логику: CanClose:=IsOSShutingDownж |
17.06.2013, 23:47 | #17 |
Регистрация: 31.03.2012
Сообщений: 9
|
Спасибо. Немного подумав послушав советы я сообразил.
Нашел решение и переписал несколько процедур. Код привожу ниже. procedure TForm1.Button7Click(Sender: TObject); begin {закрыть приложение} Form1.Close; end; procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); begin //анимация закрытия окна + закрытие приложения AnimateWindow(handle, 400, AW_BLEND or AW_HIDE); Action := caFree; Application.Terminate; end; procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean); begin //подтверждение закрытия. CanClose:=(MessageDlg ('Подтвердите закрытие программы',mtConfirmation,[mbYes,mbNo],0)=mrYes); end; Все начало отрабатывать как нужно. А как сделать что б писал не "Yes""No" a "Да""Нет"? |
18.06.2013, 00:13 | #18 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
примените MessageBox.
он зависит от настроек ОС, и на русской ОС выдаст русский текст. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
18.06.2013, 00:53 | #19 |
Регистрация: 31.03.2012
Сообщений: 9
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ошибка при выходе из игры cs 1.6 | pavel42 | Компьютерное железо | 19 | 20.10.2009 21:00 |
Скрипт срабатывающий при выходе со странички. | valyan-t | JavaScript, Ajax | 0 | 30.09.2009 17:40 |
Обновление программы по http протоколу без открытия браузера и подтверждения | The Best | Работа с сетью в Delphi | 9 | 21.07.2009 16:57 |
Ошибка при выходе из ждущего режима. | С.М.С | Компьютерное железо | 2 | 08.03.2009 02:38 |