Ruforum.net Вход · Регистрация · Правила · Поиск · Помощь
Календарь · Участники

Вы не авторизованы на форуме. Введите логин и пароль или зарегистрируйтесь    

 
Ответить · Новая тема · Новое голосование

Каскадный · [ Стандартный ] · Линейный

MFC диалоговое окно закрывается на ESC

Подписка на тему | Сообщить другу | Версия для печати
Yasnovidyashii
Perpetuum Mobile
Group Icon

Сообщений: 401
Статус: вне форума

Короче в моей проге основное окно - диалоговое. Ну и конечно же как любое нормальное диалоговое окно закрывается при нажатии на Esc. А мне оно не нужно. Какие будут рациональные предложения?
В принципе у меня есть одно неоптимальное решение. Во-вторых пока здесь наберется пару ответов, думаю, что найду парочку получше.
Но мало ли.. Может предложите, что получше.
Да и раздел нужно поднимать.
15.12.2004 · 14:42
Egot
Начинающий


Сообщений: 1
Статус: вне форума

Чтобы ESC и Enter не работали можно переопределить функции

BEGIN_MESSAGE_MAP(CMyDialog, CDialog)
ON_BN_CLICKED(IDOK, OnBnClickedOk)
ON_BN_CLICKED(IDCANCEL, OnBnClickedCancel)
END_MESSAGE_MAP()

.......

void CMyDialog::OnBnClickedOk()
{
}

void CMyDialog::OnBnClickedCancel()
{
}
15.12.2004 · 15:58
SleepWalker
юный MOSIXатор
Group Icon

Сообщений: 1164
Статус: вне форума

спасибо Miguel De Ikaza за наше счастливое детство и за то что избавил нас от MFC
16.12.2004 · 05:06
Yasnovidyashii
Perpetuum Mobile
Group Icon

Сообщений: 401
Статус: вне форума

Оффтопик: SleepWalker а мы вот так вот и мучаемся...
Сам я данную проблему решил вот каким способом.

BOOL CMyDialog::PreTranslateMessage(MSG* pMsg)
{
  if((pMsg->message==WM_KEYDOWN)&&(pMsg->wParam==VK_ESCAPE))
      return TRUE;
  return CDialog::PreTranslateMessage(pMsg);
}
12.01.2005 · 17:54
Тему просматривают:
Ответить · Опции темы · Новая тема

 



RuForum Help