Название: прочитать QWidget кнопку в другом окне? Отправлено: Vovochka от Октябрь 10, 2008, 15:30 Есть Сторонняя программа.
Необходимо считать текст с кнопки. Моя программа на С#, подключаю функции из user32.dll. Нахожу родительское окно, перебираю в нем объекты через EnumChildWindows Таким образом находится hWnd объекта, который содержит картинку и надпись. GetClassName возвращает QWidget, GetWindowText возвращает unnamed Каким образом можно дальше углубиться по иерархии и разобрать этот QWidget? EnumChildWindows не находит у него потомков. Спасибо Название: Re: прочитать QWidget кнопку в другом окне? Отправлено: Tonal от Октябрь 11, 2008, 19:07 Qt самостоятельно отрисовывает большинство элементов, так что таким методом ничего не получится.
Нужно внедрятся - поищи, я на этом форуме уже описывал что и как нужно делать. :) Название: Re: прочитать QWidget кнопку в другом окне? Отправлено: Vovochka от Октябрь 13, 2008, 15:57 Qt самостоятельно отрисовывает большинство элементов, так что таким методом ничего не получится. Спасибо за помощьНужно внедрятся - поищи, я на этом форуме уже описывал что и как нужно делать. :) Пробую внедриться. Но ничего не происходит. Подскажите, пожалуйста, мои ошибки. Код: Debug.Print("Entering the matrix"); Не знаю какой компилятор использовался для сторонней программы Название: Re: прочитать QWidget кнопку в другом окне? Отправлено: Tonal от Октябрь 13, 2008, 16:50 Для внедрения нужно использовать тот же самый компилятор которым собиралась программа. И опции компиляции нужны такие же.
Кроме того, нужно, чтобы программа была собрана с Qt динамически а не статически, и чтобы твоя dll-ка линковалась с этими же библиотеками Qt. Так что С# здесь не подойдёт. Только С++, на котором собиралась исходная программа. Название: Re: прочитать QWidget кнопку в другом окне? Отправлено: Vovochka от Октябрь 13, 2008, 22:13 Спасибо за ответы
В таком случае это невозможно, программа собрана статически :( В ABBYY Lingvo 12 есть такая опция: при зажатом CTRL и наведении курсора на любое слово, в любом окне, появляется всплывающая подсазка с переводом этого слова. Эта опция срабатывает и для этой нужной мне кнопки. Подскажите пожалуйста, в какую сторону смотреть чтобы реализовать подобный способ прочтения текста. Я знаю координаты на экране этого слова, которое мне надо прочитать. Вариант с print screen, вырезанием слова и машинным распознаванием его из картинки не очень хочется делать, но неужели это будет единственным способом... Название: Re: прочитать QWidget кнопку в другом окне? Отправлено: Tonal от Октябрь 14, 2008, 07:18 Про Lingvo прикольно. Значит есть ещё какой-то способ. :)
Название: Re: прочитать QWidget кнопку в другом окне? Отправлено: SASA от Октябрь 14, 2008, 15:06 Цитировать Про Lingvo прикольно. Значит есть ещё какой-то способ. Граб с экрана + FineReader :) |