Sei sulla pagina 1di 4

Informaes sobre o autor: Desenvolvedor Pleno Desktop e Web, com experincia de cerca de 10 anos na rea de TI.

Atualmente trabalhando na Associao de Ensino e Cultura Pio Dcimo, onde atuo desde 2006 com as tecnologias MS Visual Studio (C#) , Borland Delphi e MS SQL Server. Graduando em Sistemas de Informao pela Universidade Estcio de S.

Utilizando Comboboxes Neste artigo trago a vocs um componente muito utilizado em meus sistemas e em muitos outros mundo a fora, primeiro pela simplicidade de sua utilizao e segundo, porque proporciona trabalhar desconectado do banco de dados, ou seja, faz com que o sistema execute mais rapidamente devido menor utilizao de recursos do computador. Lembrando que essa diferena s ser notada, se voc j utilizou vrios, DBLookUpComboBoxes ou DBComboBoxes em um mesmo form. Estes componentes so similares ao ComboBox, mas trabalham conectados com o banco e encontram-se na aba Data Controls. Para quem nunca ouviu falar deste componente, ou no teve a oportunidade de trabalhar com ele, trata-se de uma caixa de texto, que inclui tambm uma listagem, esta que pode ser preenchida manualmente em modo de desenvolvimento ou via cdigo em tempo de execuo. Ento, mos a obra. Primeiramente, precisamos iniciar um novo projeto no menu: File\New\Application. Em seguida, localize a aba Standard e selecione-a. Adicione o componente ListBox no seu form, em seguida na mesma aba Standard, localize e adicione em seu projeto os componentes ComboBox e Button. OBS: Neste caso, a utilizao do componente ListBox mais para fins educativos, pois faria mais sentido, por exemplo, realizar uma consulta no banco de dados, e em seguida traz-lo para o componente, mas claro que existem vrios tipos de origem dos dados, como Memo, DBGrid, TreeView ou at mesmo outro ComboBox, entre outros. Componentes adicionados, seu projeto deve estar parecido com este.

Iniciando a codificao: Como o componente ListBox ainda no possui nenhum texto, teremos que preench-lo manualmente. Eu optei por colocar algumas capitais do Brasil, (Aracaju, Belo Horizonte, Braslia, Porto Alegre, Rio de Janeiro, e So Paulo). Para tal, basta selecionar o componente ListBox e no Object Inspector selecionar a propriedade Items, clique no boto pontilhado que aparece ao lado direito e preencha-o como queira. Pronto, agora vamos codificar o evento OnClick do componente Button, para tal basta apenas dar um clique duplo nele, que o Delphi se encarregar de criar a procedure associada ao evento e posicionar o cursor no local exato. Sua tela dever ficar parecida com esta:

Se at agora estamos juntos, hora de digitar o bloco em negrito que se segue: procedure TForm1.Button1Click(Sender: TObject); begin ComboBox1.items.clear; ListBox1.itemindex := 0; while (ListBox1.itemindex < ListBox1.Items.Count -1) do begin ComboBox1.items.add(ListBox1.Items.Strings[ListBox1.itemindex]); ListBox1.Itemindex := ListBox1.Itemindex + 1; end; ComboBox1.itemindex := 2; end;

Se sua tela ficou assim, porque deu tudo certo!

Explicando linha a linha. ComboBox1.items.clear; Esta linha, apenas limpa o contedo do combobox. claro que em sua primeira execuo, no surtir nenhum efeito, mas nas seguintes sim. ListBox1.itemindex := 0; Posiciona o cursor no primeiro item do ListBox, para que nenhum item deixe de ser includo ao ComboBox. Lembrando que o ndice de alguns componentes, o primeiro item no representado pelo nmero 1 e sim pelo 0. Como o caso do ListBox e do ComboBox. while (ListBox1.itemindex < ListBox1.Items.Count -1) do Faz com que o procedimento seja executado o nmero de vezes referente ao nmero de itens a ser inserido. O -1 no final justamente por causa do tal indice comear pelo zero 0. ComboBox1.items.add(ListBox1.Items.Strings[ListBox1.itemindex]); Neste ponto a mgica est acontecendo, o item est sendo inserido no ComboBox. ListBox1.Itemindex := ListBox1.Itemindex + 1; Para que cada item do ListBox seja inserido no ComboBox, preciso que um a um seja posicionado e a sim, ser enviado. Se no o fizesse s inseriria o primeiro da lista e o sistema ficaria em loop. ComboBox1.itemindex := 2; Esta linha para posicionar o cursor no primeiro item inserido, ou seja, Braslia. Termino aqui este artigo, desejando que tenha esclarecido algumas de suas dvidas. Lembrando que este componente possui ainda, mais de 40 outras propriedades, sem contar seus diversos eventos. At a prxima.

Potrebbero piacerti anche