Menu aplicación

08/04/2008 - 12:34 por news.microsoft.com | Informe spam
Quiero cambiar el texto de una barra de estado según el item del menú sobre
el que esté situado el ratón.
¿Cómo obtengo el item del menú?
Estoy con VS2005
 

Leer las respuestas

#1 Luis Miguel Blanco
09/04/2008 - 08:40 | Informe spam
Hola

Puedes utilizar para resolver esta situación el evento MouseEnter de las
opciones que tengas en tu menú.

Supongamos que tienes en el menú dos opciones (objetos ToolStripMenuItem)
con los nombres mnuAbrir y mnuCerrar, y tu barra de estado contiene un
ToolStripStatusLabel con el nombre lblEstado. Para conseguir que la etiqueta
situada en la barra de estado muestre el literal de las opciones de menú
según el cursor se va situando encima de cada una, en primer lugar
necesitamos escribir un método manipulador para el evento MouseEnter de las
opciones de menú. Emplearemos el mismo manipulador para ambas opciones, por
lo que en el constructor del formulario, lo registramos para las dos.

Dado que este manipulador recibirá como primer parámetro el objeto
ToolStripMenuItem que desencadenó el evento --pero como un tipo object--,
mediante una operación de conversión de tipos, convertimos el object a
ToolStripMenuItem y pasamos el valor de su propiedad Text a la etiqueta de la
barra de estado. A continuación puedes ver un ejemplo en el siguiente bloque
de código.

//
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();

this.mnuAbrir.MouseEnter+=new EventHandler(mnuOpcionMouseEnter);
this.mnuCerrar.MouseEnter += new EventHandler(mnuOpcionMouseEnter);
}

private void mnuOpcionMouseEnter(object sender, EventArgs e)
{
this.lblEstado.Text = ((ToolStripMenuItem)sender).Text;
}
}
//

Espero que te sirva de ayuda.

Un saludo
Luis Miguel Blanco
http://www.dotnetmania.com
http://geeks.ms/blogs/lmblanco/


"news.microsoft.com" wrote:

Quiero cambiar el texto de una barra de estado según el item del menú sobre
el que esté situado el ratón.
¿Cómo obtengo el item del menú?
Estoy con VS2005




Preguntas similares