ID do artigo: 251321 - Última revisão: quinta-feira, 24 de junho de 2004 - Revisão: 3.0

Erro: Controles ScrollBar exibição Paint problemas ao código é executado no evento de alteração

Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.

Nesta página

Expandir tudo | Recolher tudo

Sintomas

No Microsoft Visual Basic, os controles HScrollBar e VScrollBar intrínsecos problemas pintura se o mouse for movido para desativar o controle antes para a conclusão da execução remota de código no evento Change.

Resolução

Para contornar esse comportamento, o controle de barra de rolagem pode ser desativado no início do evento Change. Uma vez concluída a execução do código, o controle, em seguida, pode ser ativado novamente.
Private Sub HScroll1_Change()
   HScroll1.Enabled = False

   ' place your code here 

   HScroll1.Enabled = True
End Sub
				

Situação

A Microsoft confirmou que esse é um problema nos produtos da Microsoft listados no começo deste artigo.

Mais Informações

Etapas para reproduzir o problema

  1. Inicie um novo projeto Visual Basic Standard EXE. O Form1 é criado por padrão.
  2. Adicione um controle HScrollBar ao Form1.
  3. Adicione o seguinte código à seção General Declarations do Form1:
    Private Sub HScroll1_Change()
        t = Timer
        While Timer < (t + 2)  ' to give you time to move the mouse
            DoEvents
        Wend
    End Sub
    					
  4. Pressione a tecla F5 para executar o programa.
  5. Clique na seta à direita do controle HScrollBar . Observe que a seta direita aparece em um estado pressionado.
  6. Antes de na seta à direita de HScrollBar retornar ao estado em alto relevo, mova o mouse desativar o controle HScrollBar e posicionar o mouse sobre qualquer parte da área cliente do Form1.
  7. Quando a seta à direita de HScrollBar retorna ao estado em alto relevo, clique uma vez no controle deslizante HScrollBar . Observe que o thumb recebe foco e começa a piscar.
  8. Arraste o controle deslizante HScrollBar para a direita do controle. Observe que a direita e setas à esquerda do controle HScrollBar são agora selecionada e em um estado pressionado.

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 Professional Edition
  • Microsoft Visual Basic 4.0 de 16 bits Enterprise Edition
  • Microsoft Visual Basic 4.0 de 32 Bits Enterprise Edition
Palavras-chave: 
kbmt kbbug kbctrl kbnofix kbscrollbar KB251321 KbMtpt
Tradução automáticaTraduçã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: 251321  (http://support.microsoft.com/kb/251321/en-us/ )