Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как не дать окну закрытся ?

1.8K
16 января 2008 года
ViToBrother
149 / / 13.05.2007
Как зделать так чтобы при нажатие на кнопку [COLOR="Red"]Esc[/COLOR] в диологовом окне программа не закрывалась ?
1.8K
17 января 2008 года
CilCatblack
251 / / 20.09.2007
для этого вызови обработчик события окна OnCancel::)
 
Код:
...
void YourDlg::OnCancel()
{
//сделай вот так(убери эту строчку)
//CDialog::OnCancel();
}
...
17K
17 января 2008 года
_ZaliZo
21 / / 18.08.2006
Цитата: ViToBrother
Как зделать так чтобы при нажатие на кнопку [COLOR="Red"]Esc[/COLOR] в диологовом окне программа не закрывалась ?



Можно не нажимать "Esc" или заклеить его скотчем, выковырять его на крайний случай))) Или просто забить кнопку "Esc"

Код:
BOOL RegisterHotKey(
  HWND hWnd,         // window to receive hot-key notification
  int id,            // identifier of hot key
  UINT fsModifiers,  // key-modifier flags
  UINT vk            // virtual-key code
);

BOOL UnregisterHotKey(
  HWND hWnd,  // window associated with hot key
  int id      // identifier of hot key
);
1.8K
17 января 2008 года
ViToBrother
149 / / 13.05.2007
Цитата: _ZaliZo
Можно не нажимать "Esc" или заклеить его скотчем, выковырять его на крайний случай))) Или просто забить кнопку "Esc"
Код:
BOOL RegisterHotKey(
  HWND hWnd,         // window to receive hot-key notification
  int id,            // identifier of hot key
  UINT fsModifiers,  // key-modifier flags
  UINT vk            // virtual-key code
);

BOOL UnregisterHotKey(
  HWND hWnd,  // window associated with hot key
  int id      // identifier of hot key
);



Я думаю что CilCatblack дал исчерпуюший ответ :) !

1.6K
18 января 2008 года
Tdr
154 / / 13.11.2003
CilCatblack дал работающий ответ, а _ZaliZo дал правильный ответ.
Догадаешься почему?
439
19 января 2008 года
Rexulnik
217 / / 09.02.2005
Самый лучший способо это сделать обработчик сообщения WM_CLOSE и в нём просто возвращать FALSE, или можно WM_QUIT с тем же возвратом)
355
20 января 2008 года
<SCORP>
786 / / 21.10.2006
Цитата: Rexulnik
Самый лучший способо это сделать обработчик сообщения WM_CLOSE и в нём просто возвращать FALSE, или можно WM_QUIT с тем же возвратом)


тогда окно нельзя будет закрыть вообще, кроме как послать ему WM_DESTROY
надо OnCancel переопределить и не вызывать родительский обработчик. заморачиться с хот кеями нет резона абсолютно!

1.7K
21 января 2008 года
Denis_R
63 / / 15.02.2004
Я делаю так
BOOL CMyDlg::PreTranslateMessage(MSG* pMsg){
if(pMsg->message==256 && pMsg->wParam==27)
return false;
return CDialog::PreTranslateMessage(pMsg);
}
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог