C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Программная отмена нажатия клавиши
gasinets
Отправлено: 24.03.2007, 13:22


Ученик-кочегар

Группа: Участник
Сообщений: 1



Господа, доброго времени суток!

Есть следующая проблема (C++ Builder 6)

Есть 3 формы: главная, карточка документа и форма с QReport-ом.
На форму "карточка документа" повесил событие FormKeyUp и по нажатию Esc форма закрывается.

Запускаю приложение, открываю форму "карточка документа", открываю форму с QReport для предпросмотра (QReport->Preview).
После нажатия клавиши Esc (в Preview) у меня закрывается окно предпросмотра (что меня абсолютно устраивает) и закрывается форма "карточка документа" (что мне совершенно не нужно!!!).

Аналогичная проблема: в главной форме повесил событие FormKeyUp и по нажатию F2 открывается новая пустая форма "карточка документа". В форме "карточка документа" по нажатию F2 (событие FormKeyUp) содержимое сохраняется. Т.е. получается, что когда я в главной форме нажимаю F2, у меня открывается новая пустая форма "карточка документа" и сразу-же сохраняется!!! Как этого избежать?

Догадываюсь, что скорее всего нужно подчистить буфер нажатых клавиш, но вот как...:-(
Или возможно есть другой способ...?

Вернуться в Вопросы программирования в C++Builder