LISTBOX EM TEMPO DE EXECUCAO

DODOMR 25/05/2007 10:22:10
#218227
'Meu código
Private WithEvents lista As ListBox
Private WithEvents txtbusca As TextBox

Private Sub Command1_Click()
Set lista = Me.Controls.Add("vb.LISTBOX", "lista")
lista.Visible = True
lista.Top = 1260
lista.Left = 500
lista.Height = 3500
lista.Width = 3500

Set txtbusca = Me.Controls.Add("vb.textbox", "txt_busca")
txtbusca.Visible = True
txtbusca.Top = 500
txtbusca.Left = 3000
txtbusca.Height = 213
txtbusca.Width = 3500
End Sub


Private Sub lista_Click()
MsgBox lista.List(lista.ListIndex) & "-" & lista.ItemData(lista.ListIndex)
End Sub

'Até aqui Tranquilo, s;o que qnado executo esse comando pra lista receber o 'foco dá um erro em txtbusca.ListIndex=0
Private Sub txtbusca_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyDown Then
txtbusca.SetFocus
'txtbusca.ListIndex = 0
End If
End Sub


'Alguem já trabalhou com isso e tem alguma sugestão??? nem todos os comandos 'servem, quando se está criaando controles em tempo de execucão??? por 'exemplo o Sorted tbm não rola

JB207 25/05/2007 11:22:02
#218244
Brother...não consegui entender porque voce cria um ListBox em um TextBox em tempo de execução? Não vi sentido para isso.
Será que compensa ficar sofrendo, sendo que se voce colocar o ListBox e o TextBox num formulario resolve teu problema?.
Abraços.


DODOMR 25/05/2007 12:34:24
#218252
Realmente, faltou uma explicacao.
é que quando digito nesse textbox, uso a funcao aqui do VBMania de Auto Completara, então, to querendo ao inves de em todo campo que quero auto completar, ter que colocar um listbox, e todo o código, fazer isso atraves de um modulo ou classe. mas para isso preciso usar o listindex da lista.
Consegui clarear?
RODRIGOMARCHESE 25/05/2007 18:29:50
#218313
Resposta escolhida
acontece que um controle do tipo TextBox não possui a propriedade ListIndex
DODOMR 28/05/2007 09:57:05
#218461
Como são as coisas, não? Uma pequena falta de atençao, ou talvez a pressa pra resolver o problema. Valeu Rodrigo.
Tópico encerrado , respostas não são mais permitidas