Criando controles em tempo de execução
Pode acontecer de você precisar criar controles ( caixas de texto, labels, etc.) enquanto sua aplicação esta rodando , ou seja : criar controles dinamicamente.
Desta forma você pode exibir os controles enquanto e quando eles são necessários. Só tem um problema , você somente pode criar controles a partir de um controle existente. Ou seja se for quer criar caixas de texto vai ter que criar a partir de uma caixa de texto que já exista no seu formulário.
Então você pode inserir um controle no formulário , definir a sua propriedade index igual a zero ( object.index=0 ) e depois criar quantos controles quiser do mesmo tipo como um array de controles.
Vamos mostrar um exemplo. Suponha que você queira criar uma caixa de texto , um label e um botão de comando em um projeto. Para começar faça o seguinte:
1-) Inicie um novo projeto no VB e insira no formulário padrão uma caixa de texto(text1), uma etiqueta(label1) e um botão de comando ( command1)
2-) defina a propriedade index de todos os controles como igual a zero e a propriedade visible de todos como igual False. Assim esses controles ficarão invisíveis em tempo de execução.
3-) Insira o seguinte código do evento load do formulário:
Private Sub Form_Load() Load Text1(1) Text1(1).Width = 2500 Text1(1).Height = 600 Text1(1).Left = 1200 Text1(1).Top = 300 * 1 Text1(1).Visible = True Load Label1(1) Label1(1).Width = 1200 Label1(1).Height = 500 Label1(1).BorderStyle = 1 Label1(1).Left = 1200 Label1(1).Top = 1500 * 1 Label1(1).Visible = True Load Command1(1) Command1(1).Width = 2050 Command1(1).Height = 580 Command1(1).Left = 1200 Command1(1).Top = 900 * 2 Command1(1).Visible = True End Sub |
4-) Ao executar o projeto serão criados três controles : text1(1) , label1(1) e command1(1) com as propriedades definidas no código. Veja:
Já imaginou as possibilidades ? Até breve !!!