Pen Конструкторы

Определение

Инициализирует новый экземпляр класса Pen указанным цветом.

Перегрузки

Pen(Brush)

Инициализирует новый экземпляр класса Pen указанным значением Brush.

Pen(Color)

Инициализирует новый экземпляр класса Pen указанным цветом.

Pen(Brush, Single)

Инициализирует новый экземпляр класса Pen с заданными свойствами Brush и Width.

Pen(Color, Single)

Инициализирует новый экземпляр класса Pen указанными свойствами Color и Width.

Pen(Brush)

Инициализирует новый экземпляр класса Pen указанным значением Brush.

public:
 Pen(System::Drawing::Brush ^ brush);
public Pen (System.Drawing.Brush brush);
new System.Drawing.Pen : System.Drawing.Brush -> System.Drawing.Pen
Public Sub New (brush As Brush)

Параметры

brush
Brush

Объект Brush, определяющий свойства заполнения объекта Pen.

Исключения

brush имеет значение null.

Примеры

В следующем примере кода показано создание объекта Pen с помощью a Brush и эффекты установки LineJoin свойства на .Pen

Этот пример предназначен для использования с Windows Forms. Вставьте код в форму и вызовите ShowLineJoin метод при обработке события формы Paint , передавая e как PaintEventArgs.

private:
   void ShowLineJoin( PaintEventArgs^ e )
   {
      // Create a new pen.
      Pen^ skyBluePen = gcnew Pen( Brushes::DeepSkyBlue );

      // Set the pen's width.
      skyBluePen->Width = 8.0F;

      // Set the LineJoin property.
      skyBluePen->LineJoin = System::Drawing::Drawing2D::LineJoin::Bevel;

      // Draw a rectangle.
      e->Graphics->DrawRectangle( skyBluePen, Rectangle(40,40,150,200) );

      //Dispose of the pen.
      delete skyBluePen;
   }
private void ShowLineJoin(PaintEventArgs e)
{

    // Create a new pen.
    Pen skyBluePen = new Pen(Brushes.DeepSkyBlue);

    // Set the pen's width.
    skyBluePen.Width = 8.0F;

    // Set the LineJoin property.
    skyBluePen.LineJoin = System.Drawing.Drawing2D.LineJoin.Bevel;

    // Draw a rectangle.
    e.Graphics.DrawRectangle(skyBluePen, 
        new Rectangle(40, 40, 150, 200));

    //Dispose of the pen.
    skyBluePen.Dispose();
}
Private Sub ShowLineJoin(ByVal e As PaintEventArgs)

    ' Create a new pen.
    Dim skyBluePen As New Pen(Brushes.DeepSkyBlue)

    ' Set the pen's width.
    skyBluePen.Width = 8.0F

    ' Set the LineJoin property.
    skyBluePen.LineJoin = Drawing2D.LineJoin.Bevel

    ' Draw a rectangle.
    e.Graphics.DrawRectangle(skyBluePen, _
        New Rectangle(40, 40, 150, 200))

    'Dispose of the pen.
    skyBluePen.Dispose()

End Sub

Комментарии

Свойство Brush определяет способ рисования Pen линий. Линии рисуются так, как если бы они были заполнены прямоугольниками, с характеристиками указанного Brush.

Для Width свойства нового Pen задано значение 1 (по умолчанию).

Применяется к

Pen(Color)

Инициализирует новый экземпляр класса Pen указанным цветом.

public:
 Pen(System::Drawing::Color color);
public Pen (System.Drawing.Color color);
new System.Drawing.Pen : System.Drawing.Color -> System.Drawing.Pen
Public Sub New (color As Color)

Параметры

color
Color

Структура Color, показывающая цвет объекта Pen.

Комментарии

Свойству Color присваивается цвет, заданный параметром color . Для Width свойства задано значение 1 (значение по умолчанию).

Применяется к

Pen(Brush, Single)

Инициализирует новый экземпляр класса Pen с заданными свойствами Brush и Width.

public:
 Pen(System::Drawing::Brush ^ brush, float width);
public Pen (System.Drawing.Brush brush, float width);
new System.Drawing.Pen : System.Drawing.Brush * single -> System.Drawing.Pen
Public Sub New (brush As Brush, width As Single)

Параметры

brush
Brush

Объект Brush, определяющий характеристики данного объекта Pen.

width
Single

Ширина нового пера Pen.

Исключения

brush имеет значение null.

Примеры

В следующем примере кода создается Pen и демонстрируется влияние настройки StartCap и EndCap свойств для объекта Pen.

Этот пример предназначен для использования с Windows Forms. Вставьте код в форму и вызовите ShowStartAndEndCaps метод при обработке события формы Paint , передавая e как PaintEventArgs.

private:
   void Button3_Click( System::Object^ /*sender*/, System::EventArgs^ /*e*/ )
   {
      Graphics^ buttonGraphics = Button3->CreateGraphics();
      Pen^ myPen = gcnew Pen( Color::ForestGreen,4.0F );
      myPen->DashStyle = System::Drawing::Drawing2D::DashStyle::DashDotDot;
      Rectangle theRectangle = Button3->ClientRectangle;
      theRectangle.Inflate(  -2, -2 );
      buttonGraphics->DrawRectangle( myPen, theRectangle );
      delete buttonGraphics;
      delete myPen;
   }
private void Button3_Click(System.Object sender, System.EventArgs e)
{

    Graphics buttonGraphics = Button3.CreateGraphics();
    Pen myPen = new Pen(Color.ForestGreen, 4.0F);
    myPen.DashStyle = System.Drawing.Drawing2D.DashStyle.DashDotDot;

    Rectangle theRectangle = Button3.ClientRectangle;
    theRectangle.Inflate(-2, -2);
    buttonGraphics.DrawRectangle(myPen, theRectangle);
    buttonGraphics.Dispose();
    myPen.Dispose();
}
Private Sub Button3_Click(ByVal sender As System.Object, _
    ByVal e As System.EventArgs) Handles Button3.Click

    Dim buttonGraphics As Graphics = Button3.CreateGraphics()
    Dim myPen As Pen = New Pen(Color.ForestGreen, 4.0F)
    myPen.DashStyle = Drawing2D.DashStyle.DashDotDot

    Dim theRectangle As Rectangle = Button3.ClientRectangle
    theRectangle.Inflate(-2, -2)
    buttonGraphics.DrawRectangle(myPen, theRectangle)
    buttonGraphics.Dispose()
    myPen.Dispose()
End Sub

Комментарии

Для Brush параметра задается цвет, заданный в brush параметре, Width свойству присваивается значение, указанное в параметре width , а для единиц задано значение World.

Обратите внимание, что brush параметр также указывает Color свойство этого Penпараметра.

Если это значение равно 0, ширина в единицах устройства всегда равна 1 пикселю— , она не влияет на операции преобразования масштабирования, которые применяются для графического объекта, используемого Pen для этого объекта.

Применяется к

Pen(Color, Single)

Инициализирует новый экземпляр класса Pen указанными свойствами Color и Width.

public:
 Pen(System::Drawing::Color color, float width);
public Pen (System.Drawing.Color color, float width);
new System.Drawing.Pen : System.Drawing.Color * single -> System.Drawing.Pen
Public Sub New (color As Color, width As Single)

Параметры

color
Color

Структура Color, показывающая цвет объекта Pen.

width
Single

Значение, показывающее ширину объекта Pen.

Примеры

В следующем примере кода показано создание Pen и влияние настройки DashCapDashPatternсвойств и SmoothingMode свойств.

Этот пример предназначен для использования с Windows Forms. Вставьте код в форму и вызовите ShowPensAndSmoothingMode метод при обработке события формы Paint , передав e как PaintEventArgs.

private:
   void ShowPensAndSmoothingMode( PaintEventArgs^ e )
   {
      // Set the SmoothingMode property to smooth the line.
      e->Graphics->SmoothingMode = System::Drawing::Drawing2D::SmoothingMode::AntiAlias;

      // Create a new Pen object.
      Pen^ greenPen = gcnew Pen( Color::Green );

      // Set the width to 6.
      greenPen->Width = 6.0F;

      // Set the DashCap to round.
      greenPen->DashCap = System::Drawing::Drawing2D::DashCap::Round;

      // Create a custom dash pattern.
      array<Single>^temp0 = {4.0F,2.0F,1.0F,3.0F};
      greenPen->DashPattern = temp0;

      // Draw a line.
      e->Graphics->DrawLine( greenPen, 20.0F, 20.0F, 100.0F, 240.0F );

      // Change the SmoothingMode to none.
      e->Graphics->SmoothingMode = System::Drawing::Drawing2D::SmoothingMode::None;

      // Draw another line.
      e->Graphics->DrawLine( greenPen, 100.0F, 240.0F, 160.0F, 20.0F );

      // Dispose of the custom pen.
      delete greenPen;
   }
private void ShowPensAndSmoothingMode(PaintEventArgs e)
{

    // Set the SmoothingMode property to smooth the line.
    e.Graphics.SmoothingMode = 
        System.Drawing.Drawing2D.SmoothingMode.AntiAlias;

    // Create a new Pen object.
    Pen greenPen = new Pen(Color.Green);

    // Set the width to 6.
    greenPen.Width = 6.0F;

    // Set the DashCap to round.
    greenPen.DashCap = System.Drawing.Drawing2D.DashCap.Round;

    // Create a custom dash pattern.
    greenPen.DashPattern = new float[]{4.0F, 2.0F, 1.0F, 3.0F};

    // Draw a line.
    e.Graphics.DrawLine(greenPen, 20.0F, 20.0F, 100.0F, 240.0F);

    // Change the SmoothingMode to none.
    e.Graphics.SmoothingMode = 
        System.Drawing.Drawing2D.SmoothingMode.None;

    // Draw another line.
    e.Graphics.DrawLine(greenPen, 100.0F, 240.0F, 160.0F, 20.0F);

    // Dispose of the custom pen.
    greenPen.Dispose();
}
Private Sub ShowPensAndSmoothingMode(ByVal e As PaintEventArgs)

    ' Set the SmoothingMode property to smooth the line.
    e.Graphics.SmoothingMode = Drawing2D.SmoothingMode.AntiAlias

    ' Create a new Pen object.
    Dim greenPen As New Pen(Color.Green)

    ' Set the width to 6.
    greenPen.Width = 6.0F

    ' Set the DashCap to round.
    greenPen.DashCap = Drawing2D.DashCap.Round

    ' Create a custom dash pattern.
    greenPen.DashPattern = New Single() {4.0F, 2.0F, 1.0F, 3.0F}

    ' Draw a line.
    e.Graphics.DrawLine(greenPen, 20.0F, 20.0F, 100.0F, 240.0F)

    ' Change the SmoothingMode to none.
    e.Graphics.SmoothingMode = Drawing2D.SmoothingMode.None

    ' Draw another line.
    e.Graphics.DrawLine(greenPen, 100.0F, 240.0F, 160.0F, 20.0F)

    ' Dispose of the custom pen.
    greenPen.Dispose()
End Sub

Комментарии

Свойству Color присваивается цвет, заданный параметром color . Свойству Width присваивается значение, указанное в параметре width . Если это значение равно 0, ширина в единицах устройства всегда равна 1 пикселю— , она не влияет на операции преобразования масштабирования, которые применяются для графического объекта, используемого Pen для этого объекта.

Применяется к