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

Texto Rolando


mcelmo

Pergunta

10 respostass a esta questão

Posts Recomendados

  • 0

Declare isso dentro da sua classe:

  Label l = new Label();
  
  void eventoTick(object sender, System.EventArgs e) {
  	if ((l.Left+l.Width)<this.Width)
    l.Left += 10;
  }
Depois, coloque isso no evento onde você quer que o movimento se dê início (um click de um botão, por exemplo):
  	Timer t = new Timer();
  	
  	l.Text = "teste";
  	this.Controls.Add(l);
  	t.Interval = 100;
  	t.Tick += new System.EventHandler(this.eventoTick);
  	t.Start();

Certo? wink.gif

Graymalkin

Link para o comentário
Compartilhar em outros sites

  • 0

O código é quase todo igual, exceto a parte da definição do evento (em C# é pela sobrecarga de += e em VB.NET é pela instrução AddHandler). Aquela primeira parte:

  Dim l As New Label()

  Private Sub eventoTick(sender As Object, e As System.EventArgs)
  	If l.Left+l.Width<Me.Width Then
    l.Left += 10
  	End If
  End Sub
E, a segunda parte, no evento que deverá dar início ao movimento:
  	Dim t As New Timer()

  	l.Text = "teste"
  	Me.Controls.Add(l)
  	t.Interval = 100
  	AddHandler t.Tick, AddressOf Me.eventoTick
  	t.Start()

Certo? wink.gif

Graymalkin

Link para o comentário
Compartilhar em outros sites

  • 0
Funcionou !. Mas o texto esta ficando parado no canto superior a direita, como faço para o mesmo ficar passando na tela como um loop até que uma condição fosse estabelecida?.

Aquele If em eventoTick serve justamente para esse propósito. Basta trocar aquele condição lá pelo que você quiser (e também zerar a posição quando chegar no final da tela, é claro).

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

  • 0

Graymalkin.

Me desculpe pela insistencia, é que sou novato no vb.net

mas você poderia por favor me descrever esta linha de comando. pois não consegui colocar o texto passando pela tela, e como controlar a ALTURA (quero dizer posicionamento) do Texto no video.

Dim l As New Label()

Private Sub eventoTick(sender As Object, e As System.EventArgs)

--> If l.Left+l.Width<Me.Width Then

l.Left += 10

End If

End Sub

mcelmo.

Link para o comentário
Compartilhar em outros sites

  • 0

hehe, num so o graymalkin, maix axo q sirvo wink.gif...

Dim l As New Label()        '<------ Cria uma nova label instanciada de l

Private Sub eventoTick(sender As Object, e As System.EventArgs)

if left+l.Width<Me.Width Then         '<------ SE L.LEFT(posiçao) + L.WIDTH(largura) for menor q a largura do formulario (me.width) faz a seguinte instruçao

l.Left += 10       ' <------ a label 'l' mexe 10pixels para esquerda

End If

End Sub

e para mexer pra cima e pra baxo você muda:

width(largura) para hight(altura)

left(posiçao na horizontal) patra top(posiçao na vertical)

t++

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

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