Saltar para o conteúdo principal
Versão: Próximo

LISTBOX GET OBJECTS

LISTBOX GET OBJECTS ( {* ;} objeto ; arrayNomObjeto )

ParâmetroTipoDescrição
*OperadorSe for especificado, o objeto é um nome de objeto (cadeia)
Se for omitido, o objeto é uma variável
objetoanyNome do objeto (se * for especificado) ou Variável (se * for omitido)
arrayNomObjetoText arrayNomes dos sub objetos do list box (cabeçalhos, colunas, pés)

Esse comando não é seguro para thread e não pode ser usado em código adequado.

Descrição

O comando LISTBOX GET OBJECTS devolve um array que contém os nomes de todos os objetos que compõem o list box designado pelos parâmetros objeto e * .

Ao passar o parâmetro opcional * indica que o parâmetro objeto é um nome de objeto (uma cadeia). Se não passar este parâmetro, indica que o parâmetro objeto é uma variável. Neste caso, é passada uma referência de variável no lugar de uma cadeia.

Em arrayNomObjeto, passe um array texto que é enchido automaticamente pelo comando. Os nomes dos objetos são devolvidos em sua ordem de apresentação, com a seguinte sequência:

nomCol1
nomCabCol1
nomPeCol1
nomCol2
nomCabCol2
nomPeCol2
...

O array devolve os nomes dos objetos de todas as colunas (incluindo os pés de coluna), independentemente de se são ou não visíveis.

Este comando é útil no contexto da análise de um formulário utilizando os comandos FORM LOAD, FORM GET OBJECTS e OBJECT Get type. Se pode utilizar, quando seja necessário, para obter os nomes dos sub objetos dos list box.

Exemplo

Você quer carregar um formulário e obter a lista de todos os objetos dos list boxes que contém.

 FORM LOAD("MyForm")
 ARRAY TEXT(arrObjects;0)
 FORM GET OBJECTS(arrObjects)
 ARRAY LONGINT(ar_type;Size of array(arrObjects))
 For($i;1;Size of array(arrObjects))
    ar_type{$i}:=OBJECT Get type(*;arrObjects{$i})
    If(ar_type{$i}=Object type listbox)
       ARRAY TEXT(arrLBObjects;0)
       LISTBOX GET OBJECTS(*;arrObjects{$i};arrLBObjects)
    End if
 End for
 FORM UNLOAD

Ver também

FORM LOAD
OBJECT Get type