<Path>.findAttr([Range:listrange,] AttributeName:string, Value:any) → boolean
方法 findAttr 在 List/Table 中搜索一个对象,该对象包含具有传递名称和传递属性值的属性。
findAttr 方法只搜索数据类型为对象的列,即忽略其他数据类型的列。该方法查找内置属性以及用户定义的属性。如果您只想搜索具有此属性的对象,而与属性值无关,则输入 VOID 作为要搜索的值。
该方法从 List/Table 的内部指针位置开始搜索。当该方法找到这样的对象时,该方法将内部指针设置为相应的单元格并返回 true。当该方法在内部指针的位置没有找到这样的对象时,它返回false。
参数
•数据类型列表范围的可选参数范围指定您要搜索的范围。如果不传递此参数,Plant Simulation 将搜索整个表。您还可以指定多个列表范围,然后方法会搜索所有这些范围。
• 数据类型字符串的参数AttributeName 指定要搜索的属性的名称。
• 数据类型any 的参数值指定您要搜索的属性的值。当 Plant Simulation 找到该值时,它会终止搜索。当您输入 VOID 作为值时,搜索将在找到具有参数字符串名称的属性时结束。该方法将内部指针设置为对象的条目并返回true。当值不匹配时,该方法继续搜索。当它没有找到匹配的条目时,它返回 false。
笔记
属性名称和属性值的搜索不区分大小写。
返回值
返回值具有布尔数据类型。
例子
var wanted: object,
var row,column: integer
MyDataList.Cursor := 1
if MyDataList.findAttr("color", "red")
wanted := MyDataList.read(MyDataList.Cursor)
end
MyDataTable.CursorX := 1 MyDataTable.CursorY := 1
if MyDataTable.findAttr({1,1}..{4,4},"order",VOID)
column := MyDataTable.CursorX
row := MyDataTable.CursorY print table[column,row].order
end