Mover le texto de un label c#.

Iniciado por Hartigan, 5 Julio 2010, 15:02 PM

0 Miembros y 1 Visitante están viendo este tema.

Hartigan

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.

[D4N93R]

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

Un saludo

43H4FH44H45H4CH49H56H45H

Cita de: Hartigan en  5 Julio 2010, 15:02 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.

-R IP
:0100
-A 100 
2826:0100 MOV AH,09
2826:0102 MOV DX,109
2826:0105 INT 21
2826:0105 MOV AH,08
2826:0105 INT 21
2826:0107 INT 20
2826:0109 DB 'MI NICK ES CODELIVE.$' 
2826:0127 
-R BX
:0000
-R CX
:20
-N CODELIVE.COM
-W

raul338

Cita de: 43H4FH44H45H4CH49H56H45H en  5 Julio 2010, 19:16 PM
Cita de: Hartigan en  5 Julio 2010, 15:02 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)

Hartigan

Vale chicos muchas gracias, lo voy a probar en cuanto pueda y os comento.

Un abrazo ;)

eLDaviiD

Espero te sirva esto:
Código (csharp) [Seleccionar]

string first = label1.Text[0].ToString();
label1.Text = label1.Text.Remove(0,1);
label1.Text += first;

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!!...

[D4N93R]

Dejen la flojera xD Usen Drawing, para eso está xD

Hartigan

Cita de: eLDaviiD en 11 Agosto 2010, 09:52 AM
Espero te sirva esto:
Código (csharp) [Seleccionar]

string first = label1.Text[0].ToString();
label1.Text = label1.Text.Remove(0,1);
label1.Text += first;

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