首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在LeanFT中将DynamicObjectProxy转换为Object[]

在LeanFT中将DynamicObjectProxy转换为Object[]
EN

Stack Overflow用户
提问于 2019-06-18 21:36:39
回答 1查看 143关注 0票数 1

我有一个UI组件,它是JComboBox。我正在尝试调用返回Object[]数组的"getSelectedObjects()“方法

代码语言:javascript
复制
public Object[] getSelectedObjects() {
  ........
}

在自动化中,我编写了以下代码。

代码语言:javascript
复制
NativeObject obj = FruitList.getNativeObject();
com.hp.lft.sdk.internal.DynamicObjectProxy uiObj = obj.invokeMethod("getSelectedObjects", com.hp.lft.sdk.internal.DynamicObjectProxy.class, null);

如何从uiObj对象获取Object[]?

我使用的是LeanFT SDK 14.3.0

EN

回答 1

Stack Overflow用户

发布于 2020-12-22 20:14:41

我也遇到了同样的问题,因为MicroFocus没有提供正确的文档来处理NativeObjects或DynamicObjectProxy。它只返回一个包装器对象,并且不能将其转换为任何集合类型以从中获取确切值。经过大量的研究,我找到了下面的解决方案,希望能对你有所帮助:

代码语言:javascript
复制
NativeObject obj = FruitList.getNativeObject();
NativeObject uiObj = obj.invokeMethod("getSelectedObjects", NativeObject.class, null);
NativeObject result = uiObj.getItem(NativeObject.class, 0);

结果变量行中提到的'0‘可以替换为数组。变量result将根据位置给出NativeObject类的值,比如0,1等。你也可以像这样在单行中写下所有内容:

代码语言:javascript
复制
NativeObject result = FruitList.getNativeObject().invokeMethod("getSelectedObjects", NativeObject.class, null).getItem(NativeObject.class, 0);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56650483

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档