#Python keyboard (need to install in python) #Robot_RestoreParentHierarchy

dev-linux
Ivan Maslov 6 years ago
parent d7ab76f5fc
commit 16dcab5d97

@ -7,7 +7,6 @@ import os
import signal
import pdb
import orchestratorServer
lGlobalDict={}
#"JSONConfigurationDict":<JSON>
#"ActivityLog":[{""}]

@ -3,7 +3,7 @@
Open source RPA platform (Coming soon Q2 2019) for Windows.
Dependencies
* Python 3 x32 [psutil, pywinauto, wmi, PIL]
* Python 3 x32 [psutil, pywinauto, wmi, PIL, Keyboard]
* Python 3 x64
* pywinauto (Windows GUI automation)
* Semantic UI CSS framework

@ -35,7 +35,7 @@
mGlobal.Actions.fAutomationSearchMouseElementHierarchyRun= function(inElementId)
{
//Подгрузка массива спецификаций
lSpecificationArray = mGlobal.GUIElement[inElementId].GUISelectorFull
lSpecificationArray = mGlobal.GUIElement[inElementId].GUISelectorFull;
///Загрузка данных
$.ajax({
type: "POST",
@ -44,11 +44,31 @@
success:
function(lData,l2,l3)
{
var lResponseJSON=JSON.parse(lData)
var lResponseJSON=JSON.parse(lData);
///Подготовить структуру рендеринга, если у текущего объекта имееется родитель
var lStructureToRender=lResponseJSON.outputObject;
if (lSpecificationArray.length>1) {
var lStructureToRenderParent=[]
var lStructureToRenderLocal=lStructureToRenderParent;
for (var i=0;i<lSpecificationArray.length-1;i++) {
lStructureToRenderLocal.push(lSpecificationArray[i]);
///Добавить SpecificationChild, если итератор не заканчивается
if (i<lSpecificationArray.length-2) {
lStructureToRenderLocal[0]["SpecificationChild"]=[]
lStructureToRenderLocal=lStructureToRenderLocal[0]["SpecificationChild"]
}
///Если последнее звено - добавить структуру, которая поступила с сервера
if (i==lSpecificationArray.length-2) {
lStructureToRenderLocal[0]["SpecificationChild"]=lStructureToRender
lStructureToRender=lStructureToRenderParent
}
}
}
///Очистить дерево
mGlobal.ElementTree.fClear();
///Прогрузить новое дерево
mGlobal.ElementTree.fRender(lResponseJSON.outputObject);
mGlobal.ElementTree.fRender(lStructureToRender);
},
dataType: "text"
});

@ -133,7 +133,15 @@ def AutomationSearchMouseElementHierarchy(inElementSpecification,inFlagIsSearchO
#Получить информацию про объект
lItemInfo2.append(ElementInfoExportObject(lElement.element_info))
#Дообогатить информацией об индексе ребенка в родительском объекте
if "index" in lListItem:
if lListItem["index"] is not None:
lItemInfo2[-1]['ctrl_index']=lListItem["index"]
else:
if "ctrl_index" in lListItem:
lItemInfo2[-1]['ctrl_index']=lListItem["ctrl_index"]
else:
if "ctrl_index" in lListItem:
lItemInfo2[-1]['ctrl_index']=lListItem["ctrl_index"]
#Оборачиваем потомка в массив, потому что у родителя по структуре интерфейса может быть больше одного наследников
lItemInfo2[-1]['SpecificationChild']=[]
lItemInfo2=lItemInfo2[-1]['SpecificationChild']

Loading…
Cancel
Save