Вам необходимо получить свойство datawindow.visualobjects
, в котором перечислены все видимые объекты, и для каждого объекта вы просите object_name.band
проверить, хотите ли вы его.
Пример, в котором повторно используется PbniRegex. (который предоставляет объект uo_regex
в приведенном ниже коде) для упрощения синтаксического анализа свойств:
public function long of_get_band_controls (string as_band_name, ref string as_controls[]);
string ls_empty[]
int i, j
as_controls[] = ls_empty[]
uo_regex lnv_regex
lnv_regex = create uo_regex
lnv_regex.initialize( "([^\t]+)", true, false)
i = lnv_regex.search( describe("Datawindow.visualobjects") )
for j = 1 to i
if describe( lnv_regex.match( j ) + ".band" ) = as_band_name then
as_controls[ upperbound(as_controls[])+1 ] = lnv_regex.match( j )
end if
next
destroy lnv_regex
return upperbound( as_controls[] )
end function
Этот код получен из наследуемого объекта окна данных, следовательно, он получает прямой доступ к describe
способ.