Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: Hartigan en 5 Julio 2010, 15:02 pm



Título: Mover le texto de un label c#.
Publicado por: Hartigan en 5 Julio 2010, 15:02 pm
Hola de nuevo amigos. Tengo un label el cual contiene un texto pero el texto es de mayor longitud que el tamaño del label. Como puedo hacer para que el texto se vaya desplazando de un lado a otro para que se muestre entero????. No se si me explico... Como el típico texto pequeño que sale en los anuncios de televisión, que va apareciendo de un lado a otro de la pantalla.... xD

Gracias de antemano.


Título: Re: Mover le texto de un label c#.
Publicado por: [D4N93R] en 5 Julio 2010, 16:40 pm
Algo parecido a:

El Hacker.net - Subforo de .Net

Pues que yo sepa no existe, pero puedes hacerlo tu mismo. Puedes crearte un control de usuario y dibujar el contenido con las clases de System.Drawing (http://msdn.microsoft.com/en-us/library/system.drawing.aspx)

Un saludo


Título: Re: Mover le texto de un label c#.
Publicado por: 43H4FH44H45H4CH49H56H45H en 5 Julio 2010, 19:16 pm
Tengo un label el cual contiene un texto pero el texto es de mayor longitud que el tamaño del label. Como puedo hacer para que el texto se vaya desplazando de un lado a otro para que se muestre entero????. No se si me explico... Como el típico texto pequeño que sale en los anuncios de televisión, que va apareciendo de un lado a otro de la pantalla.... xD

Bastaria utilizar substring e ir actualizando una variable int hasta llegar a la cantidad total de texto - el total mostrado en el label y luego volver a la variable int a su valor inicial para empezar de nuevo.
Todo eso lo haria en un timer.
El modo mas sencillo creo  :P

Osea busca como utilizar substring para cortar la cadena al numero que tenga como maximo el label e ir actualizandolo con un timer, para recorrer todo el string y volver al inicio al terminar de mostrarlo.


Título: Re: Mover le texto de un label c#.
Publicado por: raul338 en 5 Julio 2010, 23:15 pm
Tengo un label el cual contiene un texto pero el texto es de mayor longitud que el tamaño del label. Como puedo hacer para que el texto se vaya desplazando de un lado a otro para que se muestre entero????. No se si me explico... Como el típico texto pequeño que sale en los anuncios de televisión, que va apareciendo de un lado a otro de la pantalla.... xD

Bastaria utilizar substring e ir actualizando una variable int hasta llegar a la cantidad total de texto - el total mostrado en el label y luego volver a la variable int a su valor inicial para empezar de nuevo.
Todo eso lo haria en un timer.
El modo mas sencillo creo  :P

Osea busca como utilizar substring para cortar la cadena al numero que tenga como maximo el label e ir actualizandolo con un timer, para recorrer todo el string y volver al inicio al terminar de mostrarlo.

Es verdad, siempre y cuando la pc sea algo decente de procesador :xD

De ultima, moves el label ;) Label1.Left += 1 en un timer (despues comprobas si llego al borde pa resetear y blabla, pero esa es la escencia :xD)


Título: Re: Mover le texto de un label c#.
Publicado por: Hartigan en 6 Julio 2010, 01:01 am
Vale chicos muchas gracias, lo voy a probar en cuanto pueda y os comento.

Un abrazo ;)


Título: Re: Mover le texto de un label c#.
Publicado por: eLDaviiD en 11 Agosto 2010, 09:52 am
Espero te sirva esto:
Código
  1. string first = label1.Text[0].ToString();
  2. label1.Text = label1.Text.Remove(0,1);
  3. label1.Text += first;
  4.  
Todo eso en un Timer a 100 ms y Listo.
Aunque creo que ya lo habras resuelto, puesto que hace mas de un mes que preguntaste, pero como no vi ninguna respuesta concreta pues te dejo el codigo...
Saludos!!...


Título: Re: Mover le texto de un label c#.
Publicado por: [D4N93R] en 11 Agosto 2010, 17:38 pm
Dejen la flojera xD Usen Drawing, para eso está xD


Título: Re: Mover le texto de un label c#.
Publicado por: Hartigan en 12 Agosto 2010, 02:17 am
Espero te sirva esto:
Código
  1. string first = label1.Text[0].ToString();
  2. label1.Text = label1.Text.Remove(0,1);
  3. label1.Text += first;
  4.  
Todo eso en un Timer a 100 ms y Listo.
Aunque creo que ya lo habras resuelto, puesto que hace mas de un mes que preguntaste, pero como no vi ninguna respuesta concreta pues te dejo el codigo...
Saludos!!...

Gracias pero al final decidí no usarlo. xDD