Controle ComboBox para usuários do Visual Basic 6.0
The ComboBox controle no Visual Basic 6.0 é substituído pelo Windows Forms ComboBox controlar no Visual Basic 2008. Os nomes de algumas propriedades, métodos, eventos e constantes são diferentes e em alguns casos há diferenças de característica.
Diferenças Conceituais
Evento Change
No Visual Basic 6.0, a Change evento da ComboBox controle é disparado quando o texto do controle é modificado. The Change evento não é disparado quando um item é selecionado de uma porção da lista do controle. Alterar programaticamente o texto de um item na lista não dispara o Change evento.
In Visual Basic 2008, o Change evento não existe mais; o TextChanged evento é disparado toda vez que o texto muda por qualquer razão, tais sistema autônomo:
Quando a parte de entrada de texto é modificado
Quando um item é selecionado da lista
Quando um item da lista é modificado programaticamente
Quando o AddItem método é chamado
Propriedade ItemData
No Visual Basic 6.0, a ItemData propriedade para um ComboBox o controle pode ser conjunto no time de design na Propriedades janela para associar um Integer com um ComboBox item.
In Visual Basic 2008, o ItemData propriedade não existe. A biblioteca Microsoft.VisualBasic.Compatibility contém um SetItemData função pode ser usada para associar um Integer com um item; a GetItemData função pode ser usada para recuperar o item.
Propriedade Locked
No Visual Basic 6.0, a Locked propriedade de um ComboBox controle determina se a parte caixa de texto do controle pode ser editada.
In Visual Basic 2008, o Locked propriedade impede um controle de ser movido no time de design. Não há nenhum equivalente direto para o Visual Basic 6.0 Locked propriedade; no entanto, você pode obter o mesmo efeito por configuração o DropDownStyle propriedade das ComboBox o controle para DropDownList.
Observação: No Visual Basic 6.0, configuração o Locked propriedade para True também impede que a seleção seja alterada. Você pode duplicar esse comportamento ao cancelar a seleção no MouseDown evento.
Propriedade NewIndex
In Visual Basic 6.0, the NewIndex property was used to retrieve the index of the item most recently added to aComboBox control.
In Visual Basic 2008, o NewIndex propriedade não existe. Você pode usar o valor retornado do Item.Add método para recuperar o índice de um item quando ele é adicionado.
Propriedade TopIndex
No Visual Basic 6.0, a TopIndex propriedade é usada para retornar ou conjunto um valor que especifica qual item em um ComboBox ou ListBox controle é exibido na posição mais alta. Essa propriedade normalmente é usada para rolar a lista sem selecionar um item.
In Visual Basic 2008, o ComboBox controle não oferece suporte a TopIndex propriedade. Na maioria dos casos isso não deve representar um problema porque configuração o TopIndex propriedade não tem efeito visível, a menos que o Estilo propriedade estiver definida como 1 SimpleCombo.Nesse caso, você pode emular esse comportamento, usando um ListBox controle e um TextBox controlar; o ListBox controlar ainda oferece suporte a TopIndex propriedade.
Evento Scroll
The Scroll evento no Visual Basic 6.0 é usado em conjunto com o TopIndex propriedade para executar ações quando a lista é rolada. Visual Basic 2008 não oferece suporte a Scroll evento; no entanto, na maioria dos casos o SelectedIndexChanged evento é um substituto adequado.
Outras diferenças
Além disso, existem várias diferenças conceituais aplicáveis a todos os controles, incluindo diferenças em ligações de dados,tratamento de fontes, operações de arrastar e soltar, suporte de ajuda, dentre outras.Para obter mais informações, consulte Conceitos de Windows Forms para usuários do Visual Basic 6.0.
Alterações de código para o controle Combobox
Os exemplos a seguir ilustram diferenças na codificação técnicas entre o Visual Basic 6.0 e Visual Basic 2008.
Alterações no código para fazer um controle Combobox somente leitura
O código a seguir demonstra como impedir que um usuário adicionar novos itens a um ComboBox controle.
' Visual Basic 6.0
Combo1.Locked = True
' Visual Basic
ComboBox1.DropDownStyle = ComboBoxStyle.DropDownList
Alterações no código para selecionar o item mais recentemente adicionado em um controle Combobox
O código a seguir demonstra como conjunto a seleção em um item que tenha sido adicionado programaticamente a um ComboBox controle.
' Visual Basic 6.0
Combo1.AddItem "This is a new item"
Combo1.ListIndex = Combo1.NewIndex
' Visual Basic
Dim i As Integer
i = ComboBox1.Items.Add("This is a new item")
ComboBox1.SelectedIndex = i
Alterações no código Private Sub para associar ItemData
O código a seguir demonstra como associar um número de funcionário a cada funcionário listado em um ComboBox controle, em seguida, como recuperar esse número em time de execução.
' Visual Basic 6.0
Private Sub Form_Load
Combo1.AddItem "Nancy Davolio"
Combo1.ItemData(Combo1.NewIndex) = 12345
Combo1.AddItem "Judy Phelps"
Combo1.ItemData(Combo1.NewIndex) = 67890
End Sub
Private Sub Combo1_Click()
Label1.Caption = "Empoyee #" & _
CStr(Combo1.ItemData(Combo1.ListIndex))
End Sub
' Visual Basic
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As _
System.EventArgs) Handles MyBase.Load
ComboBox1.Items.Add("Nancy Davolio")
Microsoft.VisualBasic.Compatibility.VB6. _
SetItemData(ComboBox1, ComboBox1.Items.Count() - 1, 12345)
ComboBox1.Items.Add("Judy Phelps")
Microsoft.VisualBasic.Compatibility.VB6. _
SetItemData(ComboBox1, ComboBox1.Items.Count() - 1, 67890)
End Sub
' Visual Basic
Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged
Label1.Text = "Employee #" & CStr( _
Microsoft.VisualBasic.Compatibility.VB6. _
GetItemData(ComboBox1, ComboBox1.SelectedIndex))
End Sub
Propriedades, métodos, e eventos equivalentes do controle ComboBox
As tabelas a seguir listam propriedades, métodos e eventos, juntamente com seus do Visual Basic 6.0Visual Basic 2008 equivalentes. Essas propriedades, métodos e eventos que têm o mesmo nome e comportamento não são listadas.Onde aplicável, constantes são recuadas abaixo a propriedade ou método.All Visual Basic 2008 enumerações mapeiam para o System.Windows.Forms namespace, salvo indicação em contrário.
Esta tabela fornece links para tópicos explicando diferenças de comportamento.Onde não há nenhum equivalente direto no Visual Basic 2008, são fornecidos links para tópicos que apresentam alternativas.
Propriedades
Visual Basic 6,0 |
Visual Basic 2008 Equivalente a |
---|---|
Appearance |
Nova implementação.Para obter mais informações, consulte Propriedades Appearance e BorderStyle para usuários do Visual Basic 6.0. |
BackColor |
Observação:
As cores são tratadas de maneira diferente em Visual Basic 2008.Para obter mais informações, consulte Comportamento da Cor para Usuários do Visual Basic 6.0.
|
Container |
|
DataChanged DataField DataFormat DataMember DataSource |
Nova implementação.Para obter mais informações, consulte Controle de Dados para Usuários do Visual Basic 6.0. |
DragIcon DragMode |
Nova implementação.Para obter mais informações, consulte Arrastar e soltar para usuários do Visual Basic 6.0. |
Font FontBold FontItalic FontName FontSize FontStrikethrough FontUnderline |
Observação:
Fontes são tratadas de forma diferente no Visual Basic 2008.Para obter mais informações, consulte Fonte de tratamento para usuários do Visual Basic 6.0.
|
ForeColor |
Observação:
As cores são tratadas de maneira diferente em Visual Basic 2008.Para obter mais informações, consulte Comportamento da Cor para Usuários do Visual Basic 6.0.
|
Height |
Observação:
Coordenadas são tratados de maneira diferente em Visual Basic 2008.Para obter mais informações, consulte Sistema de Coordenadas para usuários do Visual Basic 6.0.
|
HelpContextID |
Nova implementação.Para obter mais informações, consulte Suporte de Ajuda para Usuários do Visual Basic 6.0. |
HWnd |
|
Index |
Nova implementação.Para obter mais informações, consulte Controle de matrizes para usuários do Visual Basic 6.0. |
ItemData |
Nova implementação.Para obter mais informações, consulte Propriedade ItemData não pode ser atualizada. |
Left |
Observação:
Coordenadas são tratados de maneira diferente em Visual Basic 2008.Para obter mais informações, Sistema de Coordenadas para usuários do Visual Basic 6.0.
|
List |
|
ListCount |
|
ListIndex |
|
Locked |
Observação:
No Visual Basic 6.0, definindo o Locked propriedade para True também impede que a seleção seja alterada. In Visual Basic 2008, você pode duplicar esse comportamento ao cancelar a seleção na MouseDown evento.
|
MouseIcon |
Nova implementação.Para obter mais informações, consulte Não é possível definir um MousePointer personalizado. |
MousePointer |
Para obter uma lista de constantes, consulte MousePointer para usuários do Visual Basic 6.0. |
NewIndex |
Nova implementação.Para obter mais informações, consulte Propriedade NewIndex não pode ser atualizada. |
OLEDragMode |
Nova implementação.Para obter mais informações, consulte Arrastar e soltar para usuários do Visual Basic 6.0. |
OLEDropMode |
Nova implementação.Para obter mais informações, consulte Arrastar e soltar para usuários do Visual Basic 6.0. |
Parent |
Método FindForm |
RightToLeft |
|
SelLength |
|
SelStart |
|
SelText |
|
Style |
|
ToolTipText |
ToolTip componente Para obter mais informações, consulte Suporte dica de ferramenta para usuários do Visual Basic 6.0. |
Top |
Observação:
Coordenadas são tratados de maneira diferente em Visual Basic 2008.Para obter mais informações, consulte Sistema de Coordenadas para usuários do Visual Basic 6.0.
|
TopIndex |
Nova implementação.Para obter mais informações, consulte Propriedade TopIndex e evento Scroll para usuários do Visual Basic 6.0. |
WhatsThisHelpID |
Nova implementação.Para obter mais informações, consulte Suporte de Ajuda para Usuários do Visual Basic 6.0. |
Width |
Observação:
Coordenadas são tratados de maneira diferente em Visual Basic 2008.Para obter mais informações, consulte Sistema de Coordenadas para usuários do Visual Basic 6.0.
|
Métodos
Visual Basic 6,0 |
Visual Basic 2008 Equivalente a |
---|---|
AddItem |
|
Clear |
|
Drag |
Nova implementação.Para obter mais informações, consulte Arrastar e soltar para usuários do Visual Basic 6.0. |
Move |
Observação:
Coordenadas são tratados de maneira diferente em Visual Basic 2008.Para obter mais informações, consulte Sistema de Coordenadas para usuários do Visual Basic 6.0.
|
OLEDrag |
|
RemoveItem |
Items.Remove |
SetFocus |
|
ShowWhatsThis |
Nova implementação.Para obter mais informações, consulte Suporte de Ajuda para Usuários do Visual Basic 6.0. |
ZOrder |
BringToFrontSendToBack funções |
Eventos
Visual Basic 6,0 |
Visual Basic 2008 Equivalente a |
---|---|
Change |
Observação:
O comportamento das TextChanged evento é um pouco diferente. Para obter mais informações, consulte Evento Change do Controle ComboBox para usuários do Visual Basic 6.0.
|
Click |
|
DblClick |
Nova implementação.Use o SelectedIndexChanged ou TextChanged eventos. |
DragDrop DragOver |
Nova implementação.Para obter mais informações, consulte Arrastar e soltar para usuários do Visual Basic 6.0. |
GotFocus |
|
LostFocus |
|
OLECompleteDrag OLEDragDrop OLEDragOver OLEGiveFeedback OLESetData OLEStartDrag |
Nova implementação.Para obter mais informações, consulte Arrastar e soltar para usuários do Visual Basic 6.0. |
Scroll |
Nova implementação.Para obter mais informações, consulte Propriedade TopIndex e evento Scroll para usuários do Visual Basic 6.0. |
Validate |
Observações de Atualização
When a Visual Basic 6.0 project is upgraded to Visual Basic 2008, the Change event of the ComboBox control is mapped to the TextChanged event of the Visual Basic 2008 ComboBox control.O comportamento do TextChanged evento é diferente da Change evento; essa diferença pode causar resultados não intencionais no seu código.
Qualquer código que referencia o ItemData, Locked, NewIndex, ou TopIndex propriedades ou qualquer código da Scroll procedimento de evento não será atualizado; comentários forem adicionados ao código e o código de aviso deve ser removido ou modificado antes de compilar o aplicativo.
Consulte também
Conceitos
Comportamento da Cor para Usuários do Visual Basic 6.0
Objeto Font para usuários do Visual Basic 6.0
MousePointer para usuários do Visual Basic 6.0
Suporte dica de ferramenta para usuários do Visual Basic 6.0