很多朋友经常问如何根据一指定名称的字符串判断PB当中该对象是否存在?例如:WINDOW、控件、DATAWINDOW中的OBJECT、MENU等,本文将分类对这些情况予以讨论:
一、如何判断某指定WINDOW是否存在?
ClassDefinition cd_windef
cd_windef = FindClassDefinition("w_xxx")
if isvalid(cd_windef) then
//存在
end if
二、如何判断WINDOW当中的某指定控件或指定控件的指定属性是否存在?
可以借助control[]数组。
三、如何判断某指定MENU是否存在?
可以借助item[]数组。
四、如何判断DATAWINDOW当中指定OBJECT(如:指定列)是否存在?
(1)使用messagebox("1",dw_1.describe("objectname.name")),describe函数返回值若是无效的对象则返回!,如果是无效的属性,则返回?,否则返回正确字符串。
(2)使用POS函数判断指定对象NAME是否存在于dw_1.object.datawindow.objects中。
五、如何判断某指定DATAWINDOW OBJECT是否存在?
datastore ld_ds
ld_ds = create datastore
ld_ds.dataobject = "demo"
if ld_ds.Describe("D