StatusBarDrawItemEventArgs クラス
アセンブリ: System.Windows.Forms (system.windows.forms.dll 内)


オーナー描画 StatusBarPanel の視覚的要素が変更されると DrawItem イベントが発生します。StatusBarDrawItemEventArgs は、パネルを描画するために使用する Graphics オブジェクト、パネルの描画先の Rectangle オブジェクト、パネル識別番号、パネルに関するステータス情報、および描画対象のパネルを指定します。このクラスによって提供されたデータを DrawItem イベントのイベント ハンドラで使用して、アプリケーションの StatusBar コントロール内にカスタム描画パネルを作成できます。

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.EventArgs
System.Windows.Forms.DrawItemEventArgs
System.Windows.Forms.StatusBarDrawItemEventArgs


Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


StatusBarDrawItemEventArgs コンストラクタ (Graphics, Font, Rectangle, Int32, DrawItemState, StatusBarPanel, Color, Color)
アセンブリ: 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 )

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


StatusBarDrawItemEventArgs コンストラクタ (Graphics, Font, Rectangle, Int32, DrawItemState, StatusBarPanel)
アセンブリ: 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 )

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


StatusBarDrawItemEventArgs コンストラクタ

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

StatusBarDrawItemEventArgs プロパティ

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

StatusBarDrawItemEventArgs メソッド

名前 | 説明 | |
---|---|---|
![]() | DrawBackground | DrawItemEventArgs コンストラクタで指定されている境界内に適切な色で背景を描画します。 ( DrawItemEventArgs から継承されます。) |
![]() | DrawFocusRectangle | DrawItemEventArgs コンストラクタで指定されている境界内に、フォーカスを示す四角形を描画します。 ( DrawItemEventArgs から継承されます。) |
![]() | Equals | オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 ( Object から継承されます。) |
![]() | GetHashCode | 特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 ( Object から継承されます。) |
![]() | GetType | 現在のインスタンスの Type を取得します。 ( Object から継承されます。) |
![]() | ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 ( Object から継承されます。) |
![]() | ToString | 現在の Object を表す String を返します。 ( Object から継承されます。) |

名前 | 説明 | |
---|---|---|
![]() | Finalize | Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 ( Object から継承されます。) |
![]() | MemberwiseClone | 現在の Object の簡易コピーを作成します。 ( Object から継承されます。) |

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


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

名前 | 説明 | |
---|---|---|
![]() | DrawBackground | DrawItemEventArgs コンストラクタで指定されている境界内に適切な色で背景を描画します。 (DrawItemEventArgs から継承されます。) |
![]() | DrawFocusRectangle | DrawItemEventArgs コンストラクタで指定されている境界内に、フォーカスを示す四角形を描画します。 (DrawItemEventArgs から継承されます。) |
![]() | Equals | オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 (Object から継承されます。) |
![]() | GetHashCode | 特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 (Object から継承されます。) |
![]() | GetType | 現在のインスタンスの Type を取得します。 (Object から継承されます。) |
![]() | ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 (Object から継承されます。) |
![]() | ToString | 現在の Object を表す String を返します。 (Object から継承されます。) |

名前 | 説明 | |
---|---|---|
![]() | Finalize | Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 (Object から継承されます。) |
![]() | MemberwiseClone | 現在の Object の簡易コピーを作成します。 (Object から継承されます。) |

- StatusBarDrawItemEventArgsのページへのリンク