Como usar ícones com Windows 95/98/Me barra de tarefas Área de notificação

Traduções deste artigo Traduções deste artigo
ID do artigo: 149276 - Exibir os produtos aos quais esse artigo se aplica.
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
Expandir tudo | Recolher tudo

Neste artigo

Sumário

A API do Windows fornece a capacidade de adicionar, modificar e remover ícones da barra de tarefas, ou área de notificação da barra de tarefas, disponível nos Windows 95, Windows 98, Windows Me, Windows NT 4.0 e shell do Windows 2000. Essa funcionalidade pode ser fornecida usando somente a função Shell_NotifyIcon que é exportada pelo Shell32.dll. Esta função de API também fornece a capacidade para especificar uma seqüência de caracteres de texto de dica de ferramenta que é exibida quando um usuário faz uma pausa com o ponteiro do mouse sobre o ícone. O exemplo neste artigo a passo a passo cria um programa do Visual Basic que demonstra como usar essa função de API.

A capacidade de executar alguma ação se tiver clicado no ícone na área de notificação da barra de tarefas depende em uma função de retorno de chamada. Como o Visual Basic 4.0 não suporta funções de retorno de chamada diretamente, não há nenhuma maneira de mostrar um formulário ou executar alguns códigos usando somente o Visual Basic 4.0. Essa funcionalidade foi adicionada no Visual Basic 5.0 (e posterior) com a adição do operador AddressOf. Um número de opções está disponível para os desenvolvedores de Visual Basic 4.0 que podem fornecer funcionalidade de retorno de chamada, incluindo a mensagem Blaster OCX, OCX mencionado no artigo Microsoft Systems Journal observado na seção "Referências" deste artigo, ou o retorno de chamada OLE servidor que é detalhado no livro de Bruce McKinney, Hardcore Visual Basic . Para obter mais informações sobre qualquer uma dessas opções, consulte a seção "Referências". Porque esses produtos não incluem o Visual Basic, o Atendimento Microsoft não oferece suporte seu uso.

Mais Informações

O exemplo a seguir cria um projeto Visual Basic one-form que mostra como usar a função Shell_NotifyIcon API.

Exemplo passo a passo

  1. Inicie o Visual Basic. O Form1 é criado por padrão.
  2. Altere a propriedade do formulário ícone para o ícone que deve ser mostrado na área de notificação da barra de tarefas.
  3. Desenhe três CommandButtons para o formulário.
  4. Selecione o módulo no menu Inserir para adicionar um módulo de código único para o projeto.
  5. Adicione o seguinte código, consiste em função, tipo e declarações de constantes, a Module1:
          Type NOTIFYICONDATA
              cbSize As Long
              hWnd As Long
              uID As Long
              uFlags As Long
              uCallbackMessage As Long
              hIcon As Long
              szTip As String * 64
          End Type
    
          Global Const NIM_ADD = 0
          Global Const NIM_MODIFY = 1
          Global Const NIM_DELETE = 2
          Global Const NIF_MESSAGE = 1
          Global Const NIF_ICON = 2
          Global Const NIF_TIP = 4
    
          Declare Function Shell_NotifyIconA Lib "SHELL32" _
          (ByVal dwMessage As Long,  lpData As NOTIFYICONDATA) As Integer
    					
  6. O código a seguir é uma função que leva os parâmetros que precisam ser definidas para o tipo de NOTIFYICONDATA e retorna uma variável desse tipo. Adicione ao Form1:
          Private Function setNOTIFYICONDATA(hWnd As Long, ID As Long, _
              Flags As Long, CallbackMessage As Long, Icon As Long, _
              Tip As String) As NOTIFYICONDATA
    
              Dim nidTemp As NOTIFYICONDATA
    
              nidTemp.cbSize = Len(nidTemp)
              nidTemp.hWnd = hWnd
              nidTemp.uID = ID
              nidTemp.uFlags = Flags
              nidTemp.uCallbackMessage = CallbackMessage
              nidTemp.hIcon = Icon
              nidTemp.szTip = Tip & Chr$(0)
    
              setNOTIFYICONDATA = nidTemp
          End Function
    					
  7. Os três procedimentos este bloco de código chamar a função criada na etapa 5 para adicionar, modificar e remover ícones da área de notificação da barra de tarefas. Adicione este código no Form1 também:
          Private Sub Command1_Click()
              'Add an icon.  This procedure uses the icon specified in
              'the Icon property of Form1. This can be modified as desired.
    
              Dim i As Integer
              Dim s As String
              Dim nid As NOTIFYICONDATA
    
              s = InputBox("Enter string:")
              nid = setNOTIFYICONDATA(hWnd:=Form1.hWnd, _
                                      ID:=vbNull, _
                                      Flags:=NIF_MESSAGE Or NIF_ICON _
                                      Or NIF_TIP, _
                                      CallbackMessage:=vbNull, _
                                      Icon:=Form1.Icon, _
                                      Tip:=s)
    
                 i = Shell_NotifyIconA(NIM_ADD, nid)
             End Sub
    
             Private Sub Command2_Click()
                 'Modify an existing icon. This procedure uses the icon
                 'specified in the Icon property of Form1. This can be modified
                 'as desired.
    
                 Dim i As Integer
                 Dim s As String
                 Dim nid As NOTIFYICONDATA
    
                 s = InputBox("Enter string:")
                 nid = setNOTIFYICONDATA(hWnd:=Form1.hWnd, _
                                         ID:=vbNull, _
                                         Flags:=NIF_MESSAGE Or NIF_ICON _
                                         Or NIF_TIP, _
                                         CallbackMessage:=vbNull, _
                                         Icon:=Form1.Icon, _
                                         Tip:=s)
    
                 i = Shell_NotifyIconA(NIM_MODIFY, nid)
             End Sub
    
             Private Sub Command3_Click()
                 'Delete an existing icon.
    
                 Dim i As Integer
                 Dim nid As NOTIFYICONDATA
    
              nid = setNOTIFYICONDATA(hWnd:=Form1.hWnd, _
                                      ID:=vbNull, _
                                      Flags:=NIF_MESSAGE Or NIF_ICON _
                                      Or NIF_TIP, _
                                      CallbackMessage:=vbNull, _
                                      Icon:=Form1.Icon, _
                                      Tip:="")
    
              i = Shell_NotifyIconA(NIM_DELETE, nid)
          End Sub
    					
  8. Pressione a tecla F5 ou selecione Iniciar no menu Executar para executar o aplicativo. Clique no primeiro botão e insira uma seqüência de texto para adicionar um ícone. Clique no segundo botão para modificar um ícone existente e o terceiro para excluir o ícone.

Referências

hardcore Visual Basic , Bruce McKinney, Microsoft Press 1995.

SDK do Microsoft Win32, Shell_NotifyIcon e NOTIFYICONDATA.

Microsoft Systems Journal, página de fevereiro de 1996, O programador de Visual, 93.

Q diário, março de 1996, & do programador do Visual Basic, página 136.

Para obter informações adicionais, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
162613Como manipular ícones na bandeja do sistema com o Visual Basic

Propriedades

ID do artigo: 149276 - Última revisão: sábado, 22 de fevereiro de 2014 - Revisão: 3.1
A informação contida neste artigo aplica-se a:
  • Microsoft Visual Basic 4.0 Standard Edition
  • Microsoft Visual Basic 4.0 Professional Edition
  • Microsoft Visual Basic 4.0 de 32 Bits Enterprise Edition
  • Microsoft Visual Basic 5.0 Learning Edition
  • Microsoft Visual Basic 6.0 Learning Edition
  • Microsoft Visual Basic 5.0 Professional Edition
  • Microsoft Visual Basic 6.0 Professional Edition
  • Microsoft Visual Basic 5.0 Enterprise Edition
  • Microsoft Visual Basic Enterprise Edition for Windows 6.0
Palavras-chave: 
kbnosurvey kbarchive kbmt kbapi kbhowto KB149276 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 149276

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com