方法 : StatusBar コントロールにパネルを追加する

更新 : 2007 年 11 月

重要 :

StatusStrip コントロールと ToolStripStatusLabel コントロールは、StatusBar コントロールおよび StatusBarPanel コントロールに代わると共に追加の機能を提供します。ただし、StatusBar コントロールおよび StatusBarPanel コントロールは、下位互換性を保つ目的および将来使用する目的で、必要に応じて保持できます。

StatusBar コントロール (Windows フォーム) コントロール内のプログラミング可能な領域は、StatusBarPanel クラスのインスタンスで構成されています。これらのインスタンスの追加は、StatusBar.StatusBarPanelCollection クラスへの追加により行われます。

ステータス バーにパネルを追加するには

  • プロシージャでは、ステータス バー パネルを StatusBar.StatusBarPanelCollection に追加することによって作成します。Panels プロパティから取得したインデックスを使用して、パネルごとにプロパティの設定値を指定します。

    次のコード例では、アイコンの場所に対するパスとして [マイ ドキュメント] フォルダが設定されています。この場所を使用するのは、Windows オペレーティング システムを実行するコンピュータには、通常このディレクトリが存在すると考えられるためです。また、この場所を選択すると、ユーザーは最小限のシステム アクセス レベルでアプリケーションを安全に実行できます。次の例では、既に StatusBar コントロールが追加されたフォームを必要とします。

    メモ :

    StatusBar.StatusBarPanelCollection は、インデックス番号が 0 から始まるコレクションです。コードはそれに合わせて処理する必要があります。

    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;
       }
    

参照

処理手順

方法 : ステータス バー パネルのサイズを設定する

チュートリアル : ステータス バー情報の実行時更新

方法 : Windows フォームの StatusBar コントロールでクリックされたパネルを確認する

参照

コレクション エディタ ダイアログ ボックス

StatusBar コントロールの概要 (Windows フォーム)

StatusBar

ToolStripStatusLabel