powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Поскажите по кодам клавиш.....
8 сообщений из 8, страница 1 из 1
Поскажите по кодам клавиш.....
    #32359791
Гыукы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В С++В.

Есть главная форма "fsMDIForm" и другие окна "fsMDIChild".

В одном из дочерних окон установил параметр окна
"KeyPreview=true" и на событии "FormKeyDown" поставил код
if(Key == VK_DELETE) { N11Click(Sender); } В этой форме работает.

Но я хочу и на главной форме установить несколько клавиш горячих.
Установил тоже на св-ве окна "KeyPreview=true" и повесил события:
if(Key == VK_Insert) { N12Click(Sender); } и НЕ работает.

Что не так?
...
Рейтинг: 0 / 0
Поскажите по кодам клавиш.....
    #32359842
Фотография JibSkeart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Странно у меня работает

но наверное VK_INSERT (или это у вас в посте очепятка ?)
____
...
Рейтинг: 0 / 0
Поскажите по кодам клавиш.....
    #32359900
Гыукы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вот так у мэни.

if(Key == VK_INSERT) { N11Click(Sender); }
...
Рейтинг: 0 / 0
Поскажите по кодам клавиш.....
    #32359923
Фотография JibSkeart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И тоже на событие onkeyDown ??
____
...
Рейтинг: 0 / 0
Поскажите по кодам клавиш.....
    #32359948
Фотография DarkCat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Почти все кнопки без буквов перехватываются тока в onkeyDown, (как правильно заметил JibSkeart).

По поводу KeyPreview.
Разве главная форма должна перехватывать кнопки, нажатые в Childе?
Я почиму-то очень сомневаюсь, что это так. Хотя и не уверен, но по-моему это не логично.

Как вариант предлагаю использовать TAction .
Для экшена можно задать кнопку (или сочетание) прямо в его свойствах, потом проинклудить файл с ним во все файлы проекта, и Action будет срабатывать вообще из любой формы приложения.

...
Рейтинг: 0 / 0
Поскажите по кодам клавиш.....
    #32360052
Гыукы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
автор JibSkeart
И тоже на событие onkeyDown ??
У меня в этом событии и стоит код:
//---------------------------------------------------------------------------
void __fastcall TFMain::FormKeyDown(TObject *Sender, WORD &Key,
TShiftState Shift)
{ if(Key == VK_INSERT) { N11Click(Sender); } }
//---------------------------------------------------------------------------


авторDarkCat

По поводу KeyPreview.
Разве главная форма должна перехватывать кнопки, нажатые в Childе?
А я и не делаю так. У меня не работает в главной форме ( дочерние окна ВСЕ закрыты)


авторКак вариант предлагаю использовать TAction.
Просто хотел обойтись без "лишних" (других) компонентов)

Я вот тут попробывал этот код в других окнах, и тоже не работает видимо не правильно указал саму клавишу "INSERT".

Я хочу по нажатии этой клавиши в главной форме чтоб отурылась другая форма для вставки новой записи.
...
Рейтинг: 0 / 0
Поскажите по кодам клавиш.....
    #32360080
Фотография DarkCat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
значит хорош извращаться со всякими VK_ВСЯКИЕ_МАКРОСЫ
Сделай вот так:

Код: plaintext
1.
2.
3.
void __fastcall TFMain::FormKeyDown(TObject *Sender, WORD &Key, TShiftState Shift) 
{ 
  if(Key ==  45 )  N11Click(N11);  
} 


И вообще, проще (ИМХО) написать один раз:
Код: plaintext
1.
2.
3.
void __fastcall TForm1::FormKeyDown(TObject *Sender, WORD &Key,      TShiftState Shift)
{
 ShowMessage(Key);
}
и посмотреть, какая кнопка что значит, и не париться со всякими макросами.

...
Рейтинг: 0 / 0
Поскажите по кодам клавиш.....
    #32360404
Гыукы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может, так только у меня, но не работают события: "OnKey...." когда форма в стиле "fsMDIForm" в других работает, все.

Я вышел из ситуации. Всем спасибо за помощь.

С наступающим 2004.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Поскажите по кодам клавиш.....
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]