Gwt 我想从AdvancedCriteria获取值
我想从AdvancedCriteria获取值 我的代码是这样的 现在如何从对象中检索值? 您是如何从标准中获取值的Gwt 我想从AdvancedCriteria获取值,gwt,smartgwt,Gwt,Smartgwt,我想从AdvancedCriteria获取值 我的代码是这样的 现在如何从对象中检索值? 您是如何从标准中获取值的 AdvancedCriteria cr = filterBuilder.getCriteria(); JavaScriptObject jso = cr.getJsObj(); Map map = cr.getValues(); Set keys = map.keySet(); Iterator it = keys.iterator(); while( it.hasNext()){
AdvancedCriteria cr = filterBuilder.getCriteria();
JavaScriptObject jso = cr.getJsObj();
Map map = cr.getValues();
Set keys = map.keySet();
Iterator it = keys.iterator();
while( it.hasNext()){
String key = it.next().toString();
system.out.println("=> "+map.get(key));
}
Out put
=> AdvancedCriteria
=> and
=> [object Object]
要打印带有内部标准和高级标准的高级标准,可以执行以下操作:
public void onClick(ClickEvent event) {
AdvancedCriteria crit = filterBuilder.getCriteria();
printCriteria(crit, 0);
}
public void printCriteria(AdvancedCriteria ac, int level) {
char[] indentArray = new char[level];
Arrays.fill(indentArray, '\t');
String indent = new String(indentArray);
OperatorId operator = ac.getOperator();
Criteria[] c = ac.getCriteria();
for (int i = 0; i < c.length; i++) {
if (c[i].isAdvanced()) {
System.out.println(indent + "(");
printCriteria(c[i].asAdvancedCriteria(), level + 1);
System.out.println(indent + ")");
} else {
System.out.println(indent +
c[i].getAttributeAsString("fieldName") + " " +
c[i].getAttributeAsString("operator") + " " +
c[i].getAttributeAsString("value"));
}
if ((i + 1) < c.length) {
System.out.println(indent + operator);
}
}
public void onClick(单击事件){
AdvancedCriteria crit=filterBuilder.getCriteria();
打印标准(crit,0);
}
公共无效打印标准(高级标准ac,内部级别){
字符[]缩进数组=新字符[级别];
数组。填充(缩进数组,'\t');
字符串缩进=新字符串(缩进数组);
运算符ID运算符=ac.getOperator();
条件[]c=ac.getCriteria();
for(int i=0;i