Ir para conteúdo
Fórum Script Brasil
  • 0

Texto Rolante


Andersonjb

Pergunta

E ai pessoal, beleza? Bem, eu preciso de uma coisa simples: Preciso que um determinado texto fique "passando" em um Label, como o Marquee faz em páginas em HTML com um n texto. alguém tem alguma idéia de como eu posso fazer isso?

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Você pode colocar um Timer e uma Label no form e utilizar o seguinte código no evento Elapsed do Timer:

Static posx As Integer = 1

Label1.CreateGraphics().Clear(Label1.BackColor)
posx += 3
Label1.CreateGraphics().DrawString("Teste", New Font("Tahoma", 9), Brushes.Black, posx, 0)
If posx > Label1.Size.Width Then
    posx = -50
End If

Vale ressaltar que aquele valor "-50" deveria ser o tamanho negativo do texto em pixels. Não sei se existe uma função na .NET que retorne isso (pelo menos eu não encontrei), mas existe uma função da API Win32 que o faz (ela se chama GetTextExtentPoint32). Já utilizei ela no VB6, mas não acho que seja muito diferente no VB.NET. Se quiser um exemplo dela (em VB6), dê uma olhada no API-Guide: http://www.allapi.net/ ou http://www.mentalis.org/

Certo? ;)

Graymalkin

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...