Я сделал клавиатуру в Windows. Формы со многими кнопками, а их содержимое - разные символы алфавита, как настоящая клавиатура.Sendkeys отправляет no или несколько строк
Теперь проблема в том, что я использую клавиатуру в Windows 7, все работает отлично. Но когда я использую клавиатуру на сенсорном экране с Windows XP, клавиатура пишет несколько раз содержимое кнопки, которую я только что нажал, или ничего не пишу внутри текстового поля.
Вот несколько примеров кода:
Button temp = sender as Button;
SendKeys.SendWait(temp.Text);
Я попытался SendKeys.Flush и
<appSettings>
<add key="SendKeys" value="SendInput"/>
</appSettings>
внутри app.config
, который является решением здесь msdn. Но это не исправить проблему.
Что я делаю неправильно?
Редактировать: Теперь я узнал, что первое письмо всегда отлично работает. После этого все становится ужасно. Есть ли что-то еще, чем SendKeys.Flush, что я мог бы попробовать?
Ах, много впустую усилий. Windows уже предлагает приложение на экране. Все, что вам нужно, это 'Process.Start (« osk.exe »)'. Он отлично работает каждый раз, не нужно «SendKeys». –
Привет, Коди Грей, спасибо за ваш ответ. Оск из windows xp слишком мал для моего сенсорного экрана. Вы не можете изменить его размер. –
Вы подтвердили, что на сенсорном устройстве происходят события нажатия кнопки? –