Compartir a través de


Cómo: Agregar paneles a un control StatusBar

Actualización: noviembre 2007

Nota importante:

Los controles StatusStrip y ToolStripStatusLabel reemplazan a los controles StatusBar y StatusBarPanel, y les agregan funcionalidad; sin embargo, los controles StatusBar y StatusBarPanel se conservan para obtener la compatibilidad con versiones anteriores y para su uso futuro, si se desea.

El área programable contenida en un control StatusBar (Control de formularios Windows Forms) se compone de instancias de la clase StatusBarPanel. Éstas se agregan mediante adiciones a la clase StatusBar.StatusBarPanelCollection.

Para agregar paneles a la barra de estado

  • En un procedimiento, cree paneles de barra de estado agregándolos a la colección StatusBar.StatusBarPanelCollection. Especifique los valores de la propiedad para paneles individuales utilizando el índice pasado mediante la propiedad Panels.

    En el ejemplo siguiente, la ruta de acceso establecida para la ubicación del icono es la carpeta Mis documentos. Se utiliza esta ubicación porque se puede asumir que la mayoría de los equipos que ejecuten el sistema operativo Windows tendrán esta carpeta. Al elegir esta ubicación, también se permite a los usuarios con niveles de acceso mínimos ejecutar la aplicación de un modo seguro. Para el ejemplo siguiente es imprescindible que ya se haya agregado un control StatusBar al formulario.

    Nota:

    StatusBar.StatusBarPanelCollection es una colección basada en cero, por lo que el código debería proceder en consecuencia.

    Public Sub CreateStatusBarPanels()
    ' Create panels and set text property.
       StatusBar1.Panels.Add("One")
       StatusBar1.Panels.Add("Two")
       StatusBar1.Panels.Add("Three")
    ' Set properties of StatusBar panels.
    ' Set AutoSize property of panels.
       StatusBar1.Panels(0).AutoSize = StatusBarPanelAutoSize.Spring
       StatusBar1.Panels(1).AutoSize = StatusBarPanelAutoSize.Contents
       StatusBar1.Panels(2).AutoSize = StatusBarPanelAutoSize.Contents
    ' Set BorderStyle property of panels.
       StatusBar1.Panels(0).BorderStyle = StatusBarPanelBorderStyle.Raised
       StatusBar1.Panels(1).BorderStyle = StatusBarPanelBorderStyle.Sunken
       StatusBar1.Panels(2).BorderStyle = StatusBarPanelBorderStyle.Raised
    ' Set Icon property of third panel. You should replace the bolded
    ' icon in the sample below with an icon of your own choosing.
       StatusBar1.Panels(2).Icon = New _ 
       System.Drawing.Icon(System.Environment.GetFolderPath _
       (System.Environment.SpecialFolder.Personal) _
       & "\Icon.ico")
       StatusBar1.ShowPanels = True
    End Sub
    
    public void CreateStatusBarPanels()
    {
       // Create panels and set text property.
       statusBar1.Panels.Add("One");
       statusBar1.Panels.Add("Two");
       statusBar1.Panels.Add("Three");
       // Set properties of StatusBar panels.
       // Set AutoSize property of panels.
       statusBar1.Panels[0].AutoSize = StatusBarPanelAutoSize.Spring;
       statusBar1.Panels[1].AutoSize = StatusBarPanelAutoSize.Contents;
       statusBar1.Panels[2].AutoSize = StatusBarPanelAutoSize.Contents;
       // Set BorderStyle property of panels.
       statusBar1.Panels[0].BorderStyle =
          StatusBarPanelBorderStyle.Raised;
       statusBar1.Panels[1].BorderStyle = StatusBarPanelBorderStyle.Sunken;
       statusBar1.Panels[2].BorderStyle = StatusBarPanelBorderStyle.Raised;
       // Set Icon property of third panel. You should replace the bolded
       // icon in the sample below with an icon of your own choosing.
       // Note the escape character used (@) when specifying the path.
       statusBar1.Panels[2].Icon = 
          new System.Drawing.Icon (System.Environment.GetFolderPath _
       (System.Environment.SpecialFolder.Personal) _
       + @"\Icon.ico");
       statusBar1.ShowPanels = true;
    }
    
    public:
       void CreateStatusBarPanels()
       {
          // Create panels and set text property.
          statusBar1->Panels->Add("One");
          statusBar1->Panels->Add("Two");
          statusBar1->Panels->Add("Three");
          // Set properties of StatusBar panels.
          // Set AutoSize property of panels.
          statusBar1->Panels[0]->AutoSize =
             StatusBarPanelAutoSize::Spring;
          statusBar1->Panels[1]->AutoSize =
             StatusBarPanelAutoSize::Contents;
          statusBar1->Panels[2]->AutoSize =
             StatusBarPanelAutoSize::Contents;
          // Set BorderStyle property of panels.
          statusBar1->Panels[0]->BorderStyle =
             StatusBarPanelBorderStyle::Raised;
          statusBar1->Panels[1]->BorderStyle =
             StatusBarPanelBorderStyle::Sunken;
          statusBar1->Panels[2]->BorderStyle =
             StatusBarPanelBorderStyle::Raised;
          // Set Icon property of third panel.
          // You should replace the bolded image 
          // in the sample below with an icon of your own choosing.
          statusBar1->Panels[2]->Icon =
             gcnew System::Drawing::Icon(String::Concat(
             System::Environment::GetFolderPath(
             System::Environment::SpecialFolder::Personal),
             "\\Icon.ico"));
          statusBar1->ShowPanels = true;
       }
    

Vea también

Tareas

Cómo: Establecer el tamaño de los paneles de la barra de estado

Tutorial: Actualizar la información de la barra de estado en tiempo de ejecución

Cómo: Determinar en qué panel del control StatusBar de formularios Windows Forms se hizo clic

Referencia

Editor de colecciones (Cuadro de diálogo)

Información general sobre StatusBar (Control, formularios Windows Forms)

StatusBar

ToolStripStatusLabel