Novidade em 4D v19! É possível associar coleções com menus pop-up ou listas drop-down. Veja developer.4d.com.
Os pop-up/listas suspensos, são objetos que permitem ao usuário selecionar um elemento de uma lista. Os elementos que aparecem nas listas suspensas são manipulados utilizando um array ou uma lista de valores por padrão.
Os nomes “Pop-up“ e "Lista suspensa” se referem aos mesmos objetos; “Pop-up” é parte da terminologia de Mac OS e “Lista suspensa” de Windows.
Como mostram os exemplos a seguir, a aparência destes objetos é ligeiramente diferente dependendo da plataforma:

Windows
Mac OS
Um array é uma lista de valores guardados em memória referenciados pelo nome do array (ver Arrays e objetos de formulário). Um pop-up/listas suspensas mostra um array como uma lista de valores que aparece quando se clica sobre ele.
Os objetos pop-up/listas suspensas são iniciados ao carregar uma lista de valores em um array. Pode-se fazer isso de várias formas:
Se você precisa guardar em um campo a escolha do usuário, é necessário utilizar uma declaração de atribuição que seja executada depois de que se aceite o registro. Uma declaração completa tipo Case no método de objeto seria vista como esta:
Na página Eventos da janela Lista de propriedades, você deve escolher os eventos que você testou em sua declaração tipo Case..
Os arrays sempre contém um número finito de elementos. A lista de elementos é dinâmica e pode ser modificada por um método. Os elementos em um array podem ser modificados, organizados e adicionados.
Para maiores informações sobre a criação e utilização de um array, consulte o capítulo sobre arrays no capítulo
Arrays do Manual de Linguagem.
Se deseja utilizar um pop-up/lista suspensa para manipular os valores de um campo ou de uma variável listada, 4D lhe permite referenciar diretamente o campo ou a variável como fonte de dados do objeto. Isto faz com que seja mais fácil a gestão dos campos/variáveis listados.
Nota: se utilizada uma lista hierárquica, será mostrará e pode ser selecionado o primeiro nível.
Por exemplo, no caso de um campo de "Cor" que só pode conter os valores "Branco", "Azul", "Verde" ou "Vermelho", agora é possível criar uma lista que contém estes valores e associar a um objeto pop -up de menu que referencia ao campo "Cor" 4D. 4D se encarrega então da gestão automática da entrada e a visualização do valor atual no formulário
Para associar um menu pop-up/lista suspensa ou um combo box a um campo ou variável, só é introduzido diretamente o nome do campo ou da variável na área Nome da variável do objeto:

Quando se executa o formulário, 4D gerencia automaticamente o menu suspenso ou o combo box durante a entrada ou a visualização: quando um usuário escolhe um valor, é guardado no campo, quando mostrado o formulário, este valor de campo é mostrado no menu suspenso:

Nota: não é possível combinar este princípio com o uso de um array para inicializar o objeto. Se introduz um nome de campo na área de Nome de variável, então deve utilizar uma lista de opções.
Ao relacionar um objeto pop-up/lista suspensa a uma lista de seleção com um campo, pode utilizar a opção Guardar como Valor/Referência disponível no tema de "Fontes de dados" da Lista de propriedades.
Esta opção lhe permite otimizar o tamanho dos dados guardados. Para obter mais informação, consulte Guardar como Valor ou Referência .
É possível atribuir uma ação padrão a um menu emergente/lista pop up (tema "ação" da lista de propriedades). Só as ações que mostram uma sublista de elementos (exceto a ação goto page) são compatíveis com este objeto. Por exemplo, se selecionar a ação padrão "backgroundColor", em tempo de execução o objeto mostrará uma lista automática de cores de fundo. Pode anular esta lista automática ao atribuir, além disso, uma lista de opções na qual se atribui a cada elemento uma ação padrão personalizada.
Para mais informação, consulte a seção Ações padrões.