StatusBarDrawItemEventArgsとは? わかりやすく解説

StatusBarDrawItemEventArgs クラス

DrawItem イベントのデータを提供します。

名前空間: System.Windows.Forms
アセンブリ: System.Windows.Forms (system.windows.forms.dll 内)
構文構文

Public Class StatusBarDrawItemEventArgs
    Inherits DrawItemEventArgs
Dim instance As StatusBarDrawItemEventArgs
public class StatusBarDrawItemEventArgs : DrawItemEventArgs
public ref class StatusBarDrawItemEventArgs
 : public DrawItemEventArgs
public class StatusBarDrawItemEventArgs extends
 DrawItemEventArgs
public class StatusBarDrawItemEventArgs extends
 DrawItemEventArgs
解説解説
使用例使用例

Style プロパティ、StatusBarDrawItemEventHandler デリゲート、StatusBarDrawItemEventArgs クラス、StatusBarPanelStyle 列挙体、および StatusBarDrawItemEventArgs.Panel プロパティの使用方法を次のコード例に示します。この例を実行するには、次のコードをフォームに貼り付けます。そして、フォームのコンストラクタまたは Load メソッドで InitializeStatusBarPanels メソッドを呼び出します。

Private StatusBar1 As StatusBar

Private Sub InitializeStatusBarPanels()
    StatusBar1 = New StatusBar

    ' Create two StatusBarPanel objects.
    Dim panel1 As New StatusBarPanel
    Dim panel2 As New StatusBarPanel

    ' Set the style of the panels.  
    ' panel1 will be owner-drawn.
    panel1.Style = StatusBarPanelStyle.OwnerDraw

    ' The panel2 object will be drawn by the operating system.
    panel2.Style = StatusBarPanelStyle.Text

    ' Set the text of both panels to the same date string.
    panel1.Text = DateTime.Today.ToShortDateString()
    panel2.Text = DateTime.Today.ToShortDateString()

    ' Add both panels to the StatusBar.
    StatusBar1.Panels.Add(panel1)
    StatusBar1.Panels.Add(panel2)

    ' Make panels visible by setting the ShowPanels 
    ' property to True.
    StatusBar1.ShowPanels = True

    ' Use the AddHandler syntax to handle the DrawItem event
    ' for the owner-drawn panel.
    AddHandler StatusBar1.DrawItem, _
        New StatusBarDrawItemEventHandler( _
        AddressOf DrawCustomStatusBarPanel)
    Me.Controls.Add(StatusBar1)
End Sub

' Draw the panel.
Private Sub DrawCustomStatusBarPanel(ByVal
 sender As Object, _
    ByVal e As StatusBarDrawItemEventArgs)

    ' Draw a blue background in the owner-drawn panel.
    e.Graphics.FillRectangle(Brushes.AliceBlue, e.Bounds)

    ' Create a StringFormat object to align text in the panel.
    Dim textFormat As New
 StringFormat

    ' Center the text in the middle of the line.
    textFormat.LineAlignment = StringAlignment.Center

    ' Align the text to the left.
    textFormat.Alignment = StringAlignment.Far

    ' Draw the panel's text in dark blue using the Panel 
    ' and Bounds properties of the StatusBarEventArgs object 
    ' and the StringFormat object.
    e.Graphics.DrawString(e.Panel.Text, StatusBar1.Font, _
          Brushes.DarkBlue, New RectangleF(e.Bounds.X, e.Bounds.Y,
 _
          e.Bounds.Width, e.Bounds.Height), textFormat)

End Sub
private StatusBar StatusBar1;

private void InitializeStatusBarPanels()
{
    StatusBar1 = new StatusBar();

    // Create two StatusBarPanel objects.
    StatusBarPanel panel1 = new StatusBarPanel();
    StatusBarPanel panel2 = new StatusBarPanel();

    // Set the style of the panels.  
    // panel1 will be owner-drawn.
    panel1.Style = StatusBarPanelStyle.OwnerDraw;

    // The panel2 object will be drawn by the operating system.
    panel2.Style = StatusBarPanelStyle.Text;

    // Set the text of both panels to the same date string.
    panel1.Text = System.DateTime.Today.ToShortDateString();
    panel2.Text = System.DateTime.Today.ToShortDateString();

    // Add both panels to the StatusBar.
    StatusBar1.Panels.Add(panel1);
    StatusBar1.Panels.Add(panel2);

    // Make panels visible by setting the ShowPanels 
    // property to True.
    StatusBar1.ShowPanels = true;

    // Associate the event-handling method with the DrawItem event 
    // for the owner-drawn panel.
    StatusBar1.DrawItem += 
        new StatusBarDrawItemEventHandler(DrawCustomStatusBarPanel);
        
    this.Controls.Add(StatusBar1);
}

// Draw the panel.
private void DrawCustomStatusBarPanel(object
 sender, 
    StatusBarDrawItemEventArgs e)
{

    // Draw a blue background in the owner-drawn panel.
    e.Graphics.FillRectangle(Brushes.AliceBlue, e.Bounds);

    // Create a StringFormat object to align text in the panel.
    StringFormat textFormat = new StringFormat();

    // Center the text in the middle of the line.
    textFormat.LineAlignment = StringAlignment.Center;

    // Align the text to the left.
    textFormat.Alignment = StringAlignment.Far;

    // Draw the panel's text in dark blue using the Panel 
    // and Bounds properties of the StatusBarEventArgs object 
    // and the StringFormat object.
    e.Graphics.DrawString(e.Panel.Text, StatusBar1.Font, 
        Brushes.DarkBlue, new RectangleF(e.Bounds.X, 
        e.Bounds.Y, e.Bounds.Width, e.Bounds.Height), textFormat);

}
StatusBar^ StatusBar1;
void InitializeStatusBarPanels()
{
   StatusBar1 = gcnew StatusBar;
   
   // Create two StatusBarPanel objects.
   StatusBarPanel^ panel1 = gcnew StatusBarPanel;
   StatusBarPanel^ panel2 = gcnew StatusBarPanel;
   
   // Set the style of the panels.  
   // panel1 will be owner-drawn.
   panel1->Style = StatusBarPanelStyle::OwnerDraw;
   
   // The panel2 object will be drawn by the operating system.
   panel2->Style = StatusBarPanelStyle::Text;
   
   // Set the text of both panels to the same date string.
   panel1->Text = System::DateTime::Today.ToShortDateString();
   panel2->Text = System::DateTime::Today.ToShortDateString();
   
   // Add both panels to the StatusBar.
   StatusBar1->Panels->Add( panel1 );
   StatusBar1->Panels->Add( panel2 );
   
   // Make panels visible by setting the ShowPanels 
   // property to True.
   StatusBar1->ShowPanels = true;
   
   // Associate the event-handling method with the DrawItem event 
   // for the owner-drawn panel.
   StatusBar1->DrawItem += gcnew StatusBarDrawItemEventHandler( this,
 &Form1::DrawCustomStatusBarPanel );
   this->Controls->Add( StatusBar1 );
}


// Draw the panel.
void DrawCustomStatusBarPanel( Object^ sender, StatusBarDrawItemEventArgs^
 e )
{
   
   // Draw a blue background in the owner-drawn panel.
   e->Graphics->FillRectangle( Brushes::AliceBlue, e->Bounds );
   
   // Create a StringFormat object to align text in the panel.
   StringFormat^ textFormat = gcnew StringFormat;
   
   // Center the text in the middle of the line.
   textFormat->LineAlignment = StringAlignment::Center;
   
   // Align the text to the left.
   textFormat->Alignment = StringAlignment::Far;
   
   // Draw the panel's text in dark blue using the Panel 
   // and Bounds properties of the StatusBarEventArgs object 
   // and the StringFormat object.
   e->Graphics->DrawString( e->Panel->Text, StatusBar1->Font, Brushes::DarkBlue,
 RectangleF(e->Bounds.X,e->Bounds.Y,e->Bounds.Width,e->Bounds.Height),
 textFormat );
}
private StatusBar statusBar1;

private void InitializeStatusBarPanels()
{
    statusBar1 = new StatusBar();
    // Create two StatusBarPanel objects.
    StatusBarPanel panel1 = new StatusBarPanel();
    StatusBarPanel panel2 = new StatusBarPanel();
    // Set the style of the panels.  
    // panel1 will be owner-drawn.
    panel1.set_Style(StatusBarPanelStyle.OwnerDraw);
    // The panel2 object will be drawn by the operating system.
    panel2.set_Style(StatusBarPanelStyle.Text);
    // Set the text of both panels to the same date string.
    panel1.set_Text(System.DateTime.get_Today().ToShortDateString());
    panel2.set_Text(System.DateTime.get_Today().ToShortDateString());
    // Add both panels to the StatusBar.
    statusBar1.get_Panels().Add(panel1);
    statusBar1.get_Panels().Add(panel2);
    // Make panels visible by setting the ShowPanels 
    // property to True.
    statusBar1.set_ShowPanels(true);
    // Associate the event-handling method with the DrawItem event 
    // for the owner-drawn panel.
    statusBar1.add_DrawItem(new StatusBarDrawItemEventHandler(
        DrawCustomStatusBarPanel));

    this.get_Controls().Add(statusBar1);
} //InitializeStatusBarPanels

// Draw the panel.
private void DrawCustomStatusBarPanel(Object
 sender,
    StatusBarDrawItemEventArgs e)
{
    // Draw a blue background in the owner-drawn panel.
    e.get_Graphics().FillRectangle(Brushes.get_AliceBlue(), e.get_Bounds());
    // Create a StringFormat object to align text in the panel.
    StringFormat textFormat = new StringFormat();
    // Center the text in the middle of the line.
    textFormat.set_LineAlignment(StringAlignment.Center);
    // Align the text to the left.
    textFormat.set_Alignment(StringAlignment.Far);
    // Draw the panel's text in dark blue using the Panel 
    // and Bounds properties of the StatusBarEventArgs object 
    // and the StringFormat object.
    e.get_Graphics().DrawString(e.get_Panel().get_Text(),
        statusBar1.get_Font(), Brushes.get_DarkBlue(),
        new RectangleF(e.get_Bounds().get_X(), e.get_Bounds().get_Y()
,
        e.get_Bounds().get_Width(), e.get_Bounds().get_Height()), textFormat);
} //DrawCustomStatusBarPanel
継承階層継承階層
System.Object
   System.EventArgs
     System.Windows.Forms.DrawItemEventArgs
      System.Windows.Forms.StatusBarDrawItemEventArgs
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
StatusBarDrawItemEventArgs メンバ
System.Windows.Forms 名前空間
StatusBar.DrawItem イベント
StatusBarPanel
Graphics
Rectangle

StatusBarDrawItemEventArgs コンストラクタ (Graphics, Font, Rectangle, Int32, DrawItemState, StatusBarPanel, Color, Color)

StatusBarPanel の背景色と前景色を指定して、StatusBarDrawItemEventArgs クラスの新しいインスタンスを初期化します。

名前空間: System.Windows.Forms
アセンブリ: System.Windows.Forms (system.windows.forms.dll 内)
構文構文

Public Sub New ( _
    g As Graphics, _
    font As Font, _
    r As Rectangle, _
    itemId As Integer, _
    itemState As DrawItemState, _
    panel As StatusBarPanel, _
    foreColor As Color, _
    backColor As Color _
)
Dim g As Graphics
Dim font As Font
Dim r As Rectangle
Dim itemId As Integer
Dim itemState As DrawItemState
Dim panel As StatusBarPanel
Dim foreColor As Color
Dim backColor As Color

Dim instance As New StatusBarDrawItemEventArgs(g,
 font, r, itemId, itemState, panel, foreColor, backColor)
public StatusBarDrawItemEventArgs (
    Graphics g,
    Font font,
    Rectangle r,
    int itemId,
    DrawItemState itemState,
    StatusBarPanel panel,
    Color foreColor,
    Color backColor
)
public:
StatusBarDrawItemEventArgs (
    Graphics^ g, 
    Font^ font, 
    Rectangle r, 
    int itemId, 
    DrawItemState itemState, 
    StatusBarPanel^ panel, 
    Color foreColor, 
    Color backColor
)
public StatusBarDrawItemEventArgs (
    Graphics g, 
    Font font, 
    Rectangle r, 
    int itemId, 
    DrawItemState itemState, 
    StatusBarPanel panel, 
    Color foreColor, 
    Color backColor
)
public function StatusBarDrawItemEventArgs
 (
    g : Graphics, 
    font : Font, 
    r : Rectangle, 
    itemId : int, 
    itemState : DrawItemState, 
    panel : StatusBarPanel, 
    foreColor : Color, 
    backColor : Color
)

パラメータ

g

StatusBarPanel を描画するために使用する Graphics。

font

テキストを表示するために使用する Font。

r

StatusBarPanel のクライアント領域を表す Rectangle。

itemId

StatusBar コントロールの StatusBar.StatusBarPanelCollection 内のパネルの 0 から始まるインデックス番号。

itemState

StatusBarPanel に関するステータス情報を表す DrawItemState 値の 1 つ。

panel

描画するパネルを表す StatusBarPanel。

foreColor

描画するパネルの前景色を表す System.Drawing.Color 値の 1 つ。

backColor

描画するパネルの背景色を表す System.Drawing.Color 値の 1 つ。

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
StatusBarDrawItemEventArgs クラス
StatusBarDrawItemEventArgs メンバ
System.Windows.Forms 名前空間

StatusBarDrawItemEventArgs コンストラクタ (Graphics, Font, Rectangle, Int32, DrawItemState, StatusBarPanel)

StatusBarPanel の背景色と前景色を指定せずに、StatusBarDrawItemEventArgs クラスの新しいインスタンスを初期化します。

名前空間: System.Windows.Forms
アセンブリ: System.Windows.Forms (system.windows.forms.dll 内)
構文構文

Public Sub New ( _
    g As Graphics, _
    font As Font, _
    r As Rectangle, _
    itemId As Integer, _
    itemState As DrawItemState, _
    panel As StatusBarPanel _
)
Dim g As Graphics
Dim font As Font
Dim r As Rectangle
Dim itemId As Integer
Dim itemState As DrawItemState
Dim panel As StatusBarPanel

Dim instance As New StatusBarDrawItemEventArgs(g,
 font, r, itemId, itemState, panel)
public StatusBarDrawItemEventArgs (
    Graphics g,
    Font font,
    Rectangle r,
    int itemId,
    DrawItemState itemState,
    StatusBarPanel panel
)
public:
StatusBarDrawItemEventArgs (
    Graphics^ g, 
    Font^ font, 
    Rectangle r, 
    int itemId, 
    DrawItemState itemState, 
    StatusBarPanel^ panel
)
public StatusBarDrawItemEventArgs (
    Graphics g, 
    Font font, 
    Rectangle r, 
    int itemId, 
    DrawItemState itemState, 
    StatusBarPanel panel
)
public function StatusBarDrawItemEventArgs
 (
    g : Graphics, 
    font : Font, 
    r : Rectangle, 
    itemId : int, 
    itemState : DrawItemState, 
    panel : StatusBarPanel
)

パラメータ

g

StatusBarPanel を描画するために使用する Graphics。

font

テキストを表示するために使用する Font。

r

StatusBarPanel のクライアント領域を表す Rectangle。

itemId

StatusBar コントロールの StatusBar.StatusBarPanelCollection 内のパネルの 0 から始まるインデックス番号。

itemState

StatusBarPanel に関するステータス情報を表す DrawItemState 値の 1 つ。

panel

描画するパネルを表す StatusBarPanel。

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
StatusBarDrawItemEventArgs クラス
StatusBarDrawItemEventArgs メンバ
System.Windows.Forms 名前空間
DrawItemState 列挙体
Font
Graphics
Rectangle
StatusBarPanel

StatusBarDrawItemEventArgs コンストラクタ

StatusBarDrawItemEventArgs クラスの新しいインスタンスを初期化します。
オーバーロードの一覧オーバーロードの一覧

名前 説明
StatusBarDrawItemEventArgs (Graphics, Font, Rectangle, Int32, DrawItemState, StatusBarPanel) StatusBarPanel の背景色と前景色を指定せずに、StatusBarDrawItemEventArgs クラスの新しいインスタンスを初期化します。
StatusBarDrawItemEventArgs (Graphics, Font, Rectangle, Int32, DrawItemState, StatusBarPanel, Color, Color) StatusBarPanel の背景色と前景色を指定して、StatusBarDrawItemEventArgs クラスの新しいインスタンスを初期化します。
参照参照

関連項目

StatusBarDrawItemEventArgs クラス
StatusBarDrawItemEventArgs メンバ
System.Windows.Forms 名前空間
DrawItemState 列挙体
Font
Graphics
Rectangle
StatusBarPanel

StatusBarDrawItemEventArgs プロパティ


パブリック プロパティパブリック プロパティ

  名前 説明
パブリック プロパティ BackColor  描画されている項目の背景色を取得します。 ( DrawItemEventArgs から継承されます。)
パブリック プロパティ Bounds  描画されている項目の境界を表す四角形を取得します。 ( DrawItemEventArgs から継承されます。)
パブリック プロパティ Font  描画されている項目に割り当てられているフォントを取得します。 ( DrawItemEventArgs から継承されます。)
パブリック プロパティ ForeColor  描画されている項目の前景色を取得します。 ( DrawItemEventArgs から継承されます。)
パブリック プロパティ Graphics  項目を描画するグラフィックス表面を取得します。 ( DrawItemEventArgs から継承されます。)
パブリック プロパティ Index  描画されている項目のインデックス値を取得します。 ( DrawItemEventArgs から継承されます。)
パブリック プロパティ Panel 描画する StatusBarPanel を取得します。
パブリック プロパティ State  描画されている項目の状態を取得します。 ( DrawItemEventArgs から継承されます。)
参照参照

関連項目

StatusBarDrawItemEventArgs クラス
System.Windows.Forms 名前空間
StatusBar.DrawItem イベント
StatusBarPanel
Graphics
Rectangle

StatusBarDrawItemEventArgs メソッド


パブリック メソッドパブリック メソッド

プロテクト メソッドプロテクト メソッド
参照参照

関連項目

StatusBarDrawItemEventArgs クラス
System.Windows.Forms 名前空間
StatusBar.DrawItem イベント
StatusBarPanel
Graphics
Rectangle

StatusBarDrawItemEventArgs メンバ

DrawItem イベントのデータを提供します。

StatusBarDrawItemEventArgs データ型で公開されるメンバを以下の表に示します。


パブリック コンストラクタパブリック コンストラクタ
  名前 説明
パブリック メソッド StatusBarDrawItemEventArgs オーバーロードされます。 StatusBarDrawItemEventArgs クラスの新しいインスタンスを初期化します。
パブリック プロパティパブリック プロパティ
  名前 説明
パブリック プロパティ BackColor  描画されている項目の背景色を取得します。(DrawItemEventArgs から継承されます。)
パブリック プロパティ Bounds  描画されている項目の境界を表す四角形を取得します。(DrawItemEventArgs から継承されます。)
パブリック プロパティ Font  描画されている項目に割り当てられているフォントを取得します。(DrawItemEventArgs から継承されます。)
パブリック プロパティ ForeColor  描画されている項目の前景色を取得します。(DrawItemEventArgs から継承されます。)
パブリック プロパティ Graphics  項目を描画するグラフィックス表面を取得します。(DrawItemEventArgs から継承されます。)
パブリック プロパティ Index  描画されている項目のインデックス値を取得します。(DrawItemEventArgs から継承されます。)
パブリック プロパティ Panel 描画する StatusBarPanel を取得します。
パブリック プロパティ State  描画されている項目の状態を取得します。(DrawItemEventArgs から継承されます。)
パブリック メソッドパブリック メソッド
プロテクト メソッドプロテクト メソッド
参照参照

関連項目

StatusBarDrawItemEventArgs クラス
System.Windows.Forms 名前空間
StatusBar.DrawItem イベント
StatusBarPanel
Graphics
Rectangle



英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

「StatusBarDrawItemEventArgs」の関連用語

StatusBarDrawItemEventArgsのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



StatusBarDrawItemEventArgsのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS