get_all_by_property($property_name,$property_value,$tree_scope="subtree",$ignore_case=false) ; – получить все с заданными значениями свойства
Функция на вход принимает параметры:
property_name – имя свойства property_value – значение свойства tree_scope – область поиска:
- none –область исключает поддерево из поиска
- element – область включает сам элемент
- children – область включает дочерние элементы элемента
- descendants – область включает дочерние элементы и более отдалённых потомков элемента
- subtree – область включает элемент и все его потомки, этот флаг представляет собой комбинацию значений element и descendants (является значением по умолчанию)
- parent – область включает родителя элемента
- ancestors – область включает родителя и более отдаленных предков элемента
ignore_case – игнорировать ли регистр
После отработки функция возвращает результат своей работы роботу:
результат – все элементы с заданными значениями свойства. Тип возвращаемого значения – XHEUIS.
Пример использования get_all_by_property (PHP):
<?php $xhe_host = "127.0.0.1:3039"; // подключим объект для управления Р.Бот, если еще не подключен if (!isset($path)) $path="../../../Templates/init.php"; require($path); // начало echo "<hr><font color=blue>windowinterface->".basename (__FILE__)."</font><hr>"; // 1 echo "1. Получим имена всех доступных для щелчка меню: "; $xhe=$window->get_by_text("localhost")->get_ui_element(); $menus=$xhe->get_all_by_property("LocalizedControlType","элемент меню"); foreach($menus as $menu) echo $menu->get_info()->Name."\n"; // конец echo "<hr><br>"; // Quit $app->quit(); ?>
Пример использования get_all_by_property (C#):
#region using using System; using System.Diagnostics; using System.Collections.Generic; using System.Linq; using System.IO; using System.Text; using System.Threading; using XHE; using XHE.XHE_DOM; using XHE.XHE_System; using XHE.XHE_Window; using XHE.XHE_Web; #endregion class Program:XHEScript { static void Main(string[] args) { // init server="127.0.0.1:3039"; InitXHE(); // начало echo("<hr><font color=blue>windowinterface.set_text</font><hr>"); // 1 echo("1. Получим имена всех доступных для щелчка меню: "); var xhe=window.get_by_text("localhost").get_ui_element(); var menus=xhe.get_all_by_property("LocalizedControlType","элемент меню"); for (int i=0;i<menus.get_count();i++) echo(menus.get(i).get_info().GetValue("Name").ToString()+"\n"); // конец echo("<hr><br>"); app.quit(); } }
Пример использования get_all_by_property (Python):
# Additional paths import sys sys.path.insert(0, '../../../Templates PY/') xhe_host = "127.0.0.1:3039" from xweb_human_emulator import * # начало echo("<hr><font color=blue>ui.xxxxxxxxx</font><hr>") # 1 echo("1. Щелкнем меню файл : "); xhe=window.get_by_text("localhost").get_ui_element(); mfile=xhe.get_by_property("Name","Файл"); echo(mfile.invoke()); mprint=mfile.get_by_property("Name","Печать"); echo(mprint.invoke()); # конец echo("<hr><br>") # уведомляем среду что робот закончил работать echo(app.quit())
Пример использования get_all_by_property (JS):
// подключим объект для управления Р.Бот, если еще не подключен xhe_host="127.0.0.1:7010"; echo=require("../../../Templates JS/init.js"); // начало echo("<hr><font color=blue>ui.xxx</font><hr>"); // 1 echo("1. Щелкнем меню файл : "); var xhe=window.get_by_text("localhost").get_ui_element(); var mfile=xhe.get_by_property("Name","Файл"); echo(mfile.invoke()); var mprint=mfile.get_by_property("Name","Печать"); echo(mprint.invoke()); // конец echo("<hr><br>"); // уведомляем среду что скрипт закончил работать echo(app.quit());