Как предотвратить, чтобы Texter / PhraseExpress вызывал пропущенные события KeyUp в VB.NET? - PullRequest
1 голос
/ 17 ноября 2011

У меня есть приложение VB.NET. Когда Texter или PhraseExpress установлен и включен, программа работает плохо. Отладка показала, что иногда я могу нажать Enter в поле, и никакое событие не будет запущено (т. Е. Никакие точки останова в обработчиках событий не будут срабатывать), затем я нажимаю его снова, и они запускаются дважды. (В основном это цикл, если я продолжаю нажимать клавишу ввода - один раз ничего не произойдет, следующий раз я получу два события, следующее нажатие клавиши ничего не сделает, следующий вызовет два события и т. Д.)

Поскольку Enter используется в определенных местах для запуска поиска или для перемещения между полями для быстрого ввода данных с помощью цифровой клавиатуры, это фактически приводит к разрыву программы в этих местах.

Проблема повторяется: отключение Texter или PhraseExpress приводит к тому, что программа ведет себя совершенно нормально. Включение их снова приводит к его поломке.

Обратите внимание, что в обеих программах расширения текста я не назначил никаких событий клавише Enter. Фактически, с Texter (этот тест еще не проводился с PE), это происходит, даже если НЕТ замен были определены вообще, просто в зависимости от того, включен ли Texter или нет.

Ответы [ 2 ]

3 голосов
/ 18 ноября 2011

В PhraseExpress отключите опцию эксперта «Route TAB и ENTER через PhraseExpress», если у вас возникают проблемы с этими ключами.

Снимок экрана:

enter image description here

Обратите также внимание, что одновременное использование нескольких Expander расширителей текста может создавать помехи, как вы испытали. К сожалению, у нас, поставщиков, нет возможности обойти это ограничение.

Майкл Шмидт
Команда PhraseExpress

0 голосов
/ 17 ноября 2011

Попробуйте прослушать события, переопределив ProcessDialogKey http://msdn.microsoft.com/en-us/library/system.windows.forms.control.processdialogkey.aspx вместо непосредственного присоединения к событию элемента управления.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...