Compartilhar via


StatusBarDrawItemEventArgs Classe

Definição

Cuidado

StatusBar is provided for binary compatibility with .NET Framework and is not intended to be used directly from your code. Use StatusStrip instead.

Fornece dados para o evento DrawItem.

public ref class StatusBarDrawItemEventArgs : System::Windows::Forms::DrawItemEventArgs
public class StatusBarDrawItemEventArgs : System.Windows.Forms.DrawItemEventArgs
[System.ComponentModel.Browsable(false)]
[System.Obsolete("`StatusBar` is provided for binary compatibility with .NET Framework and is not intended to be used directly from your code. Use `StatusStrip` instead.", false, DiagnosticId="WFDEV006", UrlFormat="https://aka.ms/winforms-warnings/{0}")]
public class StatusBarDrawItemEventArgs : System.Windows.Forms.DrawItemEventArgs
type StatusBarDrawItemEventArgs = class
    inherit DrawItemEventArgs
[<System.ComponentModel.Browsable(false)>]
[<System.Obsolete("`StatusBar` is provided for binary compatibility with .NET Framework and is not intended to be used directly from your code. Use `StatusStrip` instead.", false, DiagnosticId="WFDEV006", UrlFormat="https://aka.ms/winforms-warnings/{0}")>]
type StatusBarDrawItemEventArgs = class
    inherit DrawItemEventArgs
Public Class StatusBarDrawItemEventArgs
Inherits DrawItemEventArgs
Herança
StatusBarDrawItemEventArgs
Atributos

Exemplos

O exemplo de código a seguir demonstra como usar a Style propriedade, o StatusBarDrawItemEventHandler delegado, a StatusBarDrawItemEventArgs classe, a StatusBarPanelStyle enumeração e a StatusBarDrawItemEventArgs.Panel propriedade. Para executar o exemplo, cole o código a seguir em um formulário. Chame o InitializeStatusBarPanels método no construtor ou Load método do formulário.

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

Comentários

O DrawItem evento ocorre quando um aspecto visual de um proprietário desenhado StatusBarPanel é alterado. Um StatusBarDrawItemEventArgs especifica o Graphics objeto a ser usado para desenhar o painel, o Rectangle objeto no qual desenhar o painel, o número de identificação do painel, as informações de estado sobre o painel e o painel a ser desenhado. Você pode usar os dados fornecidos por essa classe em um manipulador de eventos para o DrawItem evento para criar painéis personalizados no controle do StatusBar aplicativo.

Construtores

Nome Description
StatusBarDrawItemEventArgs(Graphics, Font, Rectangle, Int32, DrawItemState, StatusBarPanel, Color, Color)
Obsoleto.

Inicializa uma nova instância da StatusBarDrawItemEventArgs classe com uma tela de fundo e uma cor de primeiro plano especificadas para o StatusBarPanel.

StatusBarDrawItemEventArgs(Graphics, Font, Rectangle, Int32, DrawItemState, StatusBarPanel)
Obsoleto.

Inicializa uma nova instância da StatusBarDrawItemEventArgs classe sem especificar uma tela de fundo e uma cor de primeiro plano para a StatusBarPanel.

Propriedades

Nome Description
BackColor
Obsoleto.

Obtém a cor da tela de fundo do item que está sendo desenhado.

(Herdado de DrawItemEventArgs)
Bounds
Obsoleto.

Obtém o retângulo que representa os limites do item que está sendo desenhado.

(Herdado de DrawItemEventArgs)
Font
Obsoleto.

Obtém a fonte atribuída ao item que está sendo desenhado.

(Herdado de DrawItemEventArgs)
ForeColor
Obsoleto.

Obtém a cor do primeiro plano do item que está sendo desenhado.

(Herdado de DrawItemEventArgs)
Graphics
Obsoleto.

Obtém a superfície gráfica na qual desenhar o item.

(Herdado de DrawItemEventArgs)
Index
Obsoleto.

Obtém o valor de índice do item que está sendo desenhado.

(Herdado de DrawItemEventArgs)
Panel
Obsoleto.

Obtém o StatusBarPanel desenho a ser desenhado.

State
Obsoleto.

Obtém o estado do item que está sendo desenhado.

(Herdado de DrawItemEventArgs)

Métodos

Nome Description
Dispose()
Obsoleto.

Executa tarefas definidas pelo aplicativo associadas à liberação, liberação ou redefinição de recursos não gerenciados.

(Herdado de DrawItemEventArgs)
Dispose(Boolean)
Obsoleto.

Fornece dados para o evento DrawItem.

(Herdado de DrawItemEventArgs)
DrawBackground()
Obsoleto.

Desenha a tela de fundo dentro dos limites especificados no DrawItemEventArgs construtor e com a cor apropriada.

(Herdado de DrawItemEventArgs)
DrawFocusRectangle()
Obsoleto.

Desenha um retângulo de foco dentro dos limites especificados no DrawItemEventArgs construtor.

(Herdado de DrawItemEventArgs)
Equals(Object)
Obsoleto.

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()
Obsoleto.

Serve como a função de hash padrão.

(Herdado de Object)
GetType()
Obsoleto.

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()
Obsoleto.

Cria uma cópia superficial do Objectatual.

(Herdado de Object)
ToString()
Obsoleto.

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Implantações explícitas de interface

Nome Description
IDeviceContext.GetHdc()
Obsoleto.

Retorna o identificador para um contexto de dispositivo Windows.

(Herdado de DrawItemEventArgs)
IDeviceContext.ReleaseHdc()
Obsoleto.

Libera o identificador de um contexto de dispositivo Windows.

(Herdado de DrawItemEventArgs)

Aplica-se a

Confira também