Итак, я пытаюсь использовать автоматизацию пользовательского интерфейса (особенно белую библиотеку) для одновременного моделирования нескольких автоматизаций. Я не хотел бы, чтобы моя мышь была захвачена. Есть какой-либо способ сделать это? По сути, я хочу, чтобы экземпляр моей автоматизации пользовательского интерфейса использовал виртуальную мышь специально для этой программы вместо моей основной мыши.
Возможна автоматизация пользовательского интерфейса в C # без использования мыши
comment
Что вы имеете в виду под словом «взял мою мышь»? Вы имеете в виду, что управление программой получило фокус или что курсор мыши исчез?
- person Alas   schedule 19.04.2016
comment
wiget вместо контроля, чтобы было понятнее
- person Alas   schedule 19.04.2016
Ответы (1)
Не совсем понятно, что вы имеете в виду. Библиотека White использует элементы автоматизации пользовательского интерфейса для взаимодействия с настольными приложениями. Как только вы захватите элемент, вы можете отправить ему любую команду, например, щелчок, и он фактически не будет использовать вашу существующую мышь, чтобы щелкнуть по нему. Похоже, вы автоматизируете мышь, а не приложение.
person
Dmitry K.
schedule
15.04.2016
var menu = _application.GetWindows()[0].MenuBar.MenuItem(Подключение, Вход); меню.Нажмите(); Это берет мою мышь и это passBox.SetValue(mypass);
- person Brian Jones; 15.04.2016
Прошло некоторое время с тех пор, как я использовал White, но вы можете вызвать RaiseClickEvent для элемента пользовательского интерфейса, если он поддерживает InvokePattern. Источник: teststackwhite.readthedocs.org/en/latest/AdvancedTopics/
- person Dmitry K.; 15.04.2016
Спасибо, однако я перешел на это, и это все равно взяло мою мышь.
- person Brian Jones; 15.04.2016
RaiseClickEvent() использует InvokePattern, который не использует мышь.
- person unickq; 15.04.2016