Objeto MENU para usuários do Visual Basic 6.0
The Menu objeto no Visual Basic 6.0 é substituído por tanto o MenuStrip controle ou o ContextMenuStrip 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
No Visual Basic 6.0, um Menu objeto é criado usando o Editor de menu.Menu objetos são amarrados ao formulário para que eles são criados, mas podem ser modificados em time de execução ou mostrados sistema autônomo menus de contexto. Menus criados com o Menuobjeto não oferecem suporte nativo à sombreamento, ícones ou controles incorporados; apenas o Windows 98 "simples" - estilo menus podem ser criados.
In Visual Basic 2008, o Menu objeto é substituído pelo MenuStrip e ContextMenuStrip componentes. Menus podem ser criados usando edição in-loco em time de design ou podem ser criados no código.The MenuStrip e ContextMenuStrip sistema autônomo componentes permitem criar modernos menus de estilo de barra de ferramentas, com total suporte para compartilhar regiões, ícones, e controles embutidos sistema autônomo suspenso listas. Para obter mais informações, consulte MenuStrip Controlar Overview (Windows Forms).
Exibindo menus de contexto
Em Visual Basic 6.0, você pode exibir um menu de contexto chamando o PopupMenu método e passando qualquer nível superior Menu objeto. Por exemplo, se você tiver um edição menu chamadomnuEdit com Recortar, Cópia, and Colar submenus, você pode exibir um menu de contexto com o Recortar, Cópia, and Colar comandos chamando PopupMenu mnuEdit.
In Visual Basic 2008, menus de contexto são exibidos usando um separado ContextMenuStrip componente. Não há nenhum equivalente para o PopupMenu método, porém você ainda pode compartilhar comandos entre um MenuStrip e um ContextMenuStrip Criando o ContextMenuStrip em time de design e compartilhando os manipuladores de eventos.
Alterações de código para o objeto menu
Os exemplos a seguir ilustram diferenças na codificação técnicas entre o Visual Basic 6.0 e Visual Basic 2008.
Alterações de código para exibir menus de contexto
O código a seguir demonstra como exibir comandos Cut, Copy,. e Paste de um menu existente Edit em um menu de contexto
' Visual Basic 6.0
Private Sub mnuCut_Click()
MsgBox "You selected Cut"
End Sub
Private Sub mnuCopy_Click()
MsgBox "You selected Copy"
End Sub
Private Sub mnuPaste_Click()
MsgBox "You selected Paste"
End Sub
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = vbRightButton Then
PopupMenu mnuEdit
End If
End Sub
' Visual Basic
' You must first add a ContextMenuStrip component to the form at design
' time and add Cut, Copy, and Paste menu items named
' CutContextMenuItem, CopyContextMenuItem, and PasteContextMenuItem.
Private Sub CutToolStripMenuItem_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles CutToolStripMenuItem.Click
MsgBox("Cut")
End Sub
Private Sub CopyToolStripMenuItem_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles CopyToolStripMenuItem.Click
MsgBox("Copy")
End Sub
Private Sub PasteToolStripMenuItem_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles PasteToolStripMenuItem.Click
MsgBox("Paste")
End Sub
Private Sub Form1_MouseDown(ByVal sender As Object, ByVal e As _
System.Windows.Forms.MouseEventArgs) Handles Me.MouseDown
If e.Button = Windows.Forms.MouseButtons.Right Then
Me.ContextMenuStrip = ContextMenuStrip1
AddHandler CutContextMenuItem.Click, _
AddressOf CutToolStripMenuItem_Click
AddHandler CopyContextMenuItem.Click, _
AddressOf CopyToolStripMenuItem_Click
AddHandler PasteContextMenuItem.Click, _
AddressOf PasteToolStripMenuItem_Click
End If
End Sub
Propriedade menu e métodos equivalentes
As tabelas a seguir listam propriedades e métodos, junto com seus Visual Basic 6.0Visual Basic 2008 equivalentes. As propriedades e métodos que possuem o mesmo nome e comportamento não estão listados.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 |
---|---|
Caption |
Text (MenuStripItem) |
HelpContextID |
Nova implementação.Para obter mais informações, consulte Suporte de Ajuda para Usuários do Visual Basic 6.0. |
Index |
Nova implementação.Consulte o Index propriedade das ToolStripItemCollection classe. |
NegotiatePosition |
Não há equivalente.Somente Essa propriedade foi usada para vinculação OLE e incorporação que não oferece mais suporte. |
Parent |
Método FindForm |
WindowList |
Métodos
Visual Basic 6,0 |
Visual Basic 2008 Equivalente a |
---|---|
PopupMenu |
Nova implementação.Use um ContextMenuStrip componente. |
Observações de Atualização
Quando um aplicativo Visual Basic 6.0 é atualizado para Visual Basic 2008, todas as chamadas para o PopupMenu método não são atualizadas; você deve criar menus de contexto para substituí-las.
Consulte também
Conceitos
Tratamento de Menus para usuários do Visual Basic 6.0
Referência
MenuStrip Controlar Overview (Windows Forms)