2008-09-12 10 views
10

Tengo un menú que contiene, entre otras cosas, algunas rutas de archivos usadas recientemente. Las rutas a estos archivos pueden ser largas, por lo que el texto a veces se recorta como "C: \ Progra ... \ foo.txt"Mostrando información sobre herramientas para un elemento de menú

Me gustaría mostrar una información sobre herramientas con la ruta completa cuando el usuario pasa el cursor sobre el elemento, pero esto no parece posible con la clase Tooltip en .NET 2.0.

¿Me falta algo obvio?

Respuesta

17

Si está creando sus elementos de menú utilizando la clase System.Windows.Forms.MenuItem, no tendrá una propiedad "ToolTipText".

Debe utilizar la clase System.Windows.Forms.ToolStripMenuItem que es nueva a partir de .Net Framework 2.0 y incluye la propiedad "ToolTipText".

También hay que recordar que especificar ShowItemToolTips = True en el control MenuStrip

+0

Esta era una aplicación antigua actualizada de .NET 1.1 y usaba MainMenu con MenuItems. Nunca había visto la clase MenuStrip hasta ahora. ¡Gracias! –

+0

No veo cómo funciona esto ... Tengo un formulario personalizado con una clase de información sobre herramientas, y todos los controles que agrego a ese formulario con la pantalla de diseño funcionan bien. La clase personalizada que escribí (que hereda un StatusStrip) y sus controles secundarios no funcionan. Puedo asignar un valor al ToolTipText de mis objetos ToolStripLabel, pero la información sobre herramientas nunca aparece. Intenté vincular ToolStripLabel a la información sobre herramientas, como sugirió otro afiche, pero tooltip.SetToolTip() no acepta los controles ToolStrip; solo acepta elementos de control, qué elementos de ToolStrip son * no *. –

+0

@Tinkerer_CardTracker La pregunta que se hizo fue sobre mostrar una información sobre herramientas para un elemento del menú. Parece que tu problema es completamente diferente. Puede obtener una mejor respuesta al crear una nueva pregunta. –

-2

Quizás se olvidó de asociar la información sobre herramientas con el control usando SetToolTip.

+0

'SetToolTip' no acepta una' MenuItem'. – Otiel

1

Puede ser que no entendí tu problema, pero ¿por qué necesitas usar la clase Tooltip? Puede asignar su texto a la propiedad ToolTipText y se le mostrará al usuario.

+0

Creo que es la propiedad ToolTip. – jfs

+0

La clase de control no tiene la propiedad ToolTip. Tiene ToolTipText – aku

+0

Vaya, lo siento, estoy buscando una clase diferente de MenuItem. – jfs

0

Información sobre la herramienta se ajusta manualmente por:

testToolStripMenuItem2.ToolTipText = "My tooltip text"; 

La lata Menultem por ejemplo, ser parte de este menú constelación: una banda de menú con un elemento de menú y un elemento de menú secundario. (Este código de plomería se genera automáticamente para usted en el código detrás de archivo del diseñador si utiliza Visual Studio)

MenuStrip menuStrip1;  
ToolStripMenuItem testToolStripMenuItem; // Menu item on menu bar 
menuStrip1.Items.Add(testToolStripMenuItem); 

ToolStripMenuItem testToolStripMenuItem2; // Sub menu item 
testToolStripMenuItem.DropDownItems.Add(testToolStripMenuItem2) 
0

Por MenuStrip conjunto ShowItemToolTips = True Por ToolStripMenuItem configurar su ToolTipText

yourMenusTrip.ShowItemToolTips =true; 
yourToolStripMenuItem.ToolTipText="txt"; 
Cuestiones relacionadas