JASoft.org

El blog de José Manuel Alarcón Aguín. Programación web y mucho más...

MENÚ - JASoft: JM Alarcón

Como incluir cambios de línea en los Tooltips

Hoy como es huelga general en España, un truco rapidito para que no nos tachen de esquiroles :-P

Los Tooltips son esas etiquetas flotantes que aparecen cuando dejas el cursor del ratón unos instantes parado encima de algún control de tu aplicación, y que normalmente te dan información contextual interesante sobre el mismo:

TooltipMultiLinea

Son muy útiles en las aplicaciones Windows Forms, pero ¿Cómo podemos hacer para que un Tooltip se muestre como el de la figura anterior, es decir, en varias líneas?

Lo primero que cabría pensar es que podríamos poner un “\n” como se hace en las constantes de cadena de C#, así:

NotifyIcon1.Text = “DOTNET4\nInternet access”;

Pero no funciona y veríamos realmente ese “\n” en el texto.

La solución es concatenarle en cada cambio de línea la constante: Environment.NewLine con lo que quedaría algo así:

NotifyIcon1.Text = “DOTNET4” + Environment.NewLine + “Internet access”;

¡Listo!

Con esto conseguirás Tooltips como los de la figura superior, mucho más cómodos de leer.

¡Espero que te sea útil!

ACTUALIZACIÓN (media hora después):

Me dicen Vicenç y Jonsu por separado (uno en JASoft.org y el otro en Geeks.ms) que funciona si le pones \r como caracter de escape. funciona perfectamente gracias. La verdad es que no se me ocurrió (a veces se me ocurre lo más complicado siempre).

Si ya digo yo que no es bueno postear en día de huelga y además fuera de lo mío que es ASP.NET... Pero como estoy haciendo una app Windows para variar y surgió este tema... :-)

Gracias a los dos!

José Manuel Alarcón
Banner

Comentarios (2) -

Ahora no tengo el código a mano, pero creo que con el \r también funciona. Aunque es un poco más elegante tu solución, eso si :)

Responder

Perdón, pero Environment.NewLine no es la forma complicada, es la correcta, ya que resuelve a un salto de linea independientemente del SO. Si mañana se les ocurre cambiar el \r a \z, los que pusieron \r no les servirá más su programa y los que pusieron Environment.NewLine si. Siempre es mejor usar Environment.NewLine así no hay que andar viendo si es \n o \r o \r\n.

Responder

Agregar comentario