No Visual Basic, é possível transformar um Label em um hyperlink para abrir páginas da web ou enviar e-mails. Isso pode ser feito utilizando a API ShellExecute, que permite executar arquivos e URLs diretamente do código.
Passo a Passo para Criar Hyperlinks em Labels
- Adicione dois Labels ao formulário e nomeie-os como Label1 e Label2.
- Insira o código abaixo no formulário para configurar os Labels como links clicáveis.
Código Completo
' Declaração da função ShellExecute para abrir URLs e e-mails
Private Declare Function ShellExecute Lib "shell32.dll" Alias _
"ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, _
ByVal lpFile As String, ByVal lpParameters As String, _
ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
' Ao clicar no Label1, abre a página da WebMundi
Private Sub Label1_Click()
Dim ret As Long
ret = ShellExecute(Me.hwnd, "Open", "http://www.webmundi.com", "", "", 1)
End Sub
' Altera a cor do Label1 quando pressionado
Private Sub Label1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Label1.ForeColor = vbRed
End Sub
' Retorna a cor original quando solta o clique
Private Sub Label1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
Label1.ForeColor = vbBlue
End Sub
' Ao clicar no Label2, abre o cliente de e-mail para enviar um e-mail
Private Sub Label2_Click()
Dim ret As Long
ret = ShellExecute(Me.hwnd, "Open", "mailto:[email protected]?Subject=Criando Hyperlinks no Label", "", "", 1)
End Sub
' Altera a cor do Label2 quando pressionado
Private Sub Label2_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Label2.ForeColor = vbRed
End Sub
' Retorna a cor original quando solta o clique
Private Sub Label2_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
Label2.ForeColor = vbBlue
End Sub
' Configura os Labels ao carregar o Formulário
Private Sub Form_Load()
' Configuração do Label1 (Link para site)
With Label1
.AutoSize = True
.ForeColor = vbBlue
.Font.Italic = True
.Font.Underline = True
.Caption = "http://www.webmundi.com"
End With
' Configuração do Label2 (Link para e-mail)
With Label2
.AutoSize = True
.ForeColor = vbBlue
.Font.Italic = True
.Font.Underline = True
.Caption = "[email protected]"
End With
End Sub
Explicação do Código
– ShellExecute → Função usada para abrir URLs e enviar e-mails.
– Label1 → Redireciona para um site ao clicar.
– Label2 → Abre o cliente de e-mail com um assunto predefinido.
– MouseDown e MouseUp → Mudam a cor do texto ao clicar para simular um link real.
– Form_Load → Configura os Labels como links ao iniciar o formulário.
Melhoria na Experiência do Usuário
– Cores alteradas ao clicar para parecer mais com um link real.
– Texto sublinhado e azul, como um hyperlink tradicional.
– AutoSize ativado para que o tamanho do Label ajuste automaticamente ao texto.
Esse método torna seus Labels interativos e funcionais dentro de qualquer projeto em Visual Basic.