Управляющие идентификаторы в приложении Java / SWT - PullRequest
1 голос
/ 13 января 2012

У меня есть стороннее приложение, и мне нужно прочитать значения некоторых элементов управления, чтобы использовать их в моем собственном приложении, разработанном в Delphi. Другое приложение работает в Windows и, очевидно, написано на Java с использованием инфраструктуры SWT. К сожалению, идентификаторы (control) идентификаторов элементов управления, где мне нужно прочитать значения, различаются каждый раз, когда я запускаю стороннее приложение. Кажется, что среда Java / SWT генерирует новые идентификаторы окон / элементов управления каждый раз, когда создается пользовательский интерфейс приложения. Могу ли я использовать какой-либо другой идентификатор?

1 Ответ

1 голос
/ 13 января 2012

Вы можете использовать свойства Windows, чтобы получить постоянный идентификатор.

Имя свойства: SWT_OBJECT_INDEX:

nProp := GetProp(Handle, 'SWT_OBJECT_INDEX');

Возвращаемое значение GetProp () - это идентификатор окна. Ручка - это ручка для вашего контроля. Однако вам нужно пройти через все дочерние окна, чтобы найти элемент управления с идентификатором, который вы ищете. Обратите внимание, что эти идентификаторы могут измениться, если приложение обновлено.

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