Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Закрытие формы по нажатии кнопки Esc 
V
    Опции темы
586
Дата 8.1.2013, 00:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2243
Регистрация: 8.5.2006

Репутация: 57
Всего: 146



Цитата(Нитонисе @  8.1.2013,  00:26 Найти цитируемый пост)
Хм. Работает smile Только я не понимаю механизма работы. TAction - это что-то вроде невизуального компонента, который что-то делает. При этом то что он делает записано в OnExecute. А активируется OnExecute в данном случае нажатием Esc? Тогда странно, почему TAction знает что нажата Esc, а форма не знает.

В форму нажатие клавиш не приходят, они идут в WebBrowser. А свойство Shortcut действует независимо от этого. Подобное можно самому сделать, обрабатывая событие Application->OnMessage.

Это сообщение отредактировал(а) 586 - 8.1.2013, 00:15
PM   Вверх
thurloran
Дата 15.1.2013, 13:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 15.1.2013

Репутация: нет
Всего: нет



Цитата(Нитонисе @ 7.1.2013,  17:00)
Закрываю таким образом дочерние формы. Обрабатываю событие формы OnKeyPress, при этом KeyPreview = true.
Код

void __fastcall TForm2::FormKeyPress(TObject *Sender, wchar_t &Key)
{
    if (Key == VK_ESCAPE) this->Close();
}
Странно, что этот код срабатывает, но только один раз. Потом если снова показать форму Form2 и нажать Esc - она уже не закрывается. Есть еще одна дочерняя форма Form3, которая всегда закрывается по Esc. В чем может быть причина такого различного поведения? На Form2 у меня панель инструментов с кнопками и TWebBrowser на всю форму. На Form3 - панель, комбобоксы, лейблы и кнопки.

П нпдо показать какую именно форму закрывать.
                                                  
radeon 6990

Это сообщение отредактировал(а) thurloran - 19.1.2013, 11:14
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.0693 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.