Перейти к содержимому

Фотография

Определение рядом стоящих элементов в TC Object Browser

Object Browser Next Sibling

  • Авторизуйтесь для ответа в теме
Сообщений в теме: 4

#1 Сергей

Сергей

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 245 сообщений
  • Город:Москва

Отправлено 02 декабря 2014 - 12:20

Добрый день.

 

Существует ли метод определения рядом стоящего элемента в Object Browser что-то вроде nextsibling?

 

Иногда возникает такая необходимость, например, когда надо описать самописный ComboBox.

 

Спасибо.


  • 0

"Если ты хороший плотник и делаешь красивую тумбочку, ты не будешь прибивать сзади фанеру, даже несмотря на то, что задняя часть повернута к стене, и никто ее не видит. Ты будешь хорошо спать ночью, только если тебе удалось воплотить в своем произведении эстетическую красоту и качество." © Стив Джобс


#2 modbear

modbear

    Специалист

  • Members
  • PipPipPipPipPip
  • 548 сообщений

Отправлено 02 декабря 2014 - 12:54

В общем случае нет.

В веб-приложениях можно искать объекты по XPath, а там есть following-sibling и preceding-sibling.


  • 0

#3 Сергей

Сергей

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 245 сообщений
  • Город:Москва

Отправлено 02 декабря 2014 - 14:18

Интересует Desktop


  • 0

"Если ты хороший плотник и делаешь красивую тумбочку, ты не будешь прибивать сзади фанеру, даже несмотря на то, что задняя часть повернута к стене, и никто ее не видит. Ты будешь хорошо спать ночью, только если тебе удалось воплотить в своем произведении эстетическую красоту и качество." © Стив Джобс


#4 modbear

modbear

    Специалист

  • Members
  • PipPipPipPipPip
  • 548 сообщений

Отправлено 03 декабря 2014 - 08:34

Можно написать скрипт, который будет перебирать объекты и сравнивать их экранные координаты с базовым объектом. Что-то типа (псевдокод):

// найти чилдовый комбобокс справа от OBJ
children = parent.FindAllChildren("WndClass", "ComboBox", 10);
for each (child in children)
{
  if ((child.X > OBJ.X) // объект слева от OBJ?
      AND (abs(child.Y - OBJ.Y) <= 10)) // объект на одном уровне по вертикали с OBJ?
  then
  {
    // подходит
  }
}

  • 1

#5 Сергей

Сергей

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 245 сообщений
  • Город:Москва

Отправлено 03 декабря 2014 - 10:28

Огонь, такая идея не посещала. Себе в копилку занесу. Спасибо.


  • 0

"Если ты хороший плотник и делаешь красивую тумбочку, ты не будешь прибивать сзади фанеру, даже несмотря на то, что задняя часть повернута к стене, и никто ее не видит. Ты будешь хорошо спать ночью, только если тебе удалось воплотить в своем произведении эстетическую красоту и качество." © Стив Джобс



Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных