PaintEventArgs.Graphics プロパティとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > PaintEventArgs.Graphics プロパティの意味・解説 

PaintEventArgs.Graphics プロパティ

描画使用するグラフィックス取得します

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

使用例使用例

Paint イベント処理し、PaintEventArgs クラス使用してフォーム四角形描画する例を次に示します四角形サイズは、MouseDown イベントと MouseUp イベント処理して判断します。この例では、Invalidate メソッド使用して四角形領域無効にし、再描画させる方法示します

Dim RcDraw As Rectangle
Dim PenWidth As Integer
 = 5


Private Sub Form1_MouseDown(ByVal
 sender As Object, ByVal
 e As System.Windows.Forms.MouseEventArgs) Handles MyBase.MouseDown

    ' Determine the initial rectangle coordinates...

    RcDraw.X = e.X
    RcDraw.Y = e.Y

End Sub

Private Sub Form1_MouseUp(ByVal
 sender As Object, ByVal
 e As System.Windows.Forms.MouseEventArgs) Handles MyBase.MouseUp

    ' Determine the width and height of the rectangle...

    If e.X < RcDraw.X Then
        RcDraw.Width = RcDraw.X - e.X
        RcDraw.X = e.X
    Else
        RcDraw.Width = e.X - RcDraw.X
    End If

    If e.Y < RcDraw.Y Then
        RcDraw.Height = RcDraw.Y - e.Y
        RcDraw.Y = e.Y
    Else
        RcDraw.Height = e.Y - RcDraw.Y
    End If

    ' Force a repaint of the region occupied by the rectangle...

    Me.Invalidate(RcDraw)

End Sub

Private Sub Form1_Paint(ByVal
 sender As Object, ByVal
 e As System.Windows.Forms.PaintEventArgs) Handles MyBase.Paint

    ' Draw the rectangle...

    e.Graphics.DrawRectangle(New Pen(Color.Blue, PenWidth), RcDraw)

End Sub


private Rectangle RcDraw;
private float PenWidth = 5;

private void Form1_MouseDown(object sender,
 System.Windows.Forms.MouseEventArgs e)
{

    // Determine the initial rectangle coordinates...

    RcDraw.X = e.X;
    RcDraw.Y = e.Y;

}

private void Form1_MouseUp(object sender, System.Windows.Forms.MouseEventArgs
 e)
{

    // Determine the width and height of the rectangle...

    if(e.X < RcDraw.X)
    {
        RcDraw.Width = RcDraw.X - e.X;
        RcDraw.X = e.X;
    }
    else
    {
        RcDraw.Width = e.X - RcDraw.X;
    }

    if(e.Y < RcDraw.Y)
    {
        RcDraw.Height = RcDraw.Y - e.Y;
        RcDraw.Y = e.Y;
    }
    else
    {
        RcDraw.Height = e.Y - RcDraw.Y;
    }

    // Force a repaint of the region occupied by the rectangle...

    this.Invalidate(RcDraw);

}

private void Form1_Paint(object sender, System.Windows.Forms.PaintEventArgs
 e)
{

    // Draw the rectangle...

    e.Graphics.DrawRectangle(new Pen(Color.Blue, PenWidth), RcDraw);
    
}

private:
   Rectangle RcDraw;
   void Form1_MouseDown( Object^ /*sender*/, System::Windows::Forms::MouseEventArgs^
 e )
   {
      // Determine the initial rectangle coordinates...
      RcDraw.X = e->X;
      RcDraw.Y = e->Y;
   }

   void Form1_MouseUp( Object^ /*sender*/, System::Windows::Forms::MouseEventArgs^
 e )
   {
      // Determine the width and height of the rectangle...
      if ( e->X < RcDraw.X )
      {
         RcDraw.Width = RcDraw.X - e->X;
         RcDraw.X = e->X;
      }
      else
      {
         RcDraw.Width = e->X - RcDraw.X;
      }

      if ( e->Y < RcDraw.Y )
      {
         RcDraw.Height = RcDraw.Y - e->Y;
         RcDraw.Y = e->Y;
      }
      else
      {
         RcDraw.Height = e->Y - RcDraw.Y;
      }

      // Force a repaint of the region occupied by the rectangle...
      this->Invalidate( RcDraw );
   }

   void Form1_Paint( Object^ /*sender*/, System::Windows::Forms::PaintEventArgs^
 e )
   {
      // Draw the rectangle...
      float PenWidth = 5;
      e->Graphics->DrawRectangle( gcnew Pen( Color::Blue,PenWidth ), RcDraw
 );
   }
private Rectangle rcDraw;

private float penWidth = 5;

private void Form1_MouseDown(Object sender
,
    System.Windows.Forms.MouseEventArgs e)
{
    // Determine the initial rectangle coordinates...
    rcDraw.set_X(e.get_X());
    rcDraw.set_Y(e.get_Y());
} //Form1_MouseDown

private void Form1_MouseUp(Object sender, 
    System.Windows.Forms.MouseEventArgs e)
{
    // Determine the width and height of the rectangle...
    if (e.get_X() < rcDraw.get_X()) {
        rcDraw.set_Width(rcDraw.get_X() - e.get_X());
        rcDraw.set_X(e.get_X());
    }
    else {
        rcDraw.set_Width(e.get_X() - rcDraw.get_X());
    }

    if (e.get_Y() < rcDraw.get_Y()) {
        rcDraw.set_Height(rcDraw.get_Y() - e.get_Y());
        rcDraw.set_Y(e.get_Y());
    }
    else {
        rcDraw.set_Height(e.get_Y() - rcDraw.get_Y());
    }

    // Force a repaint of the region occupied by the rectangle...
    this.Invalidate(rcDraw);
} //Form1_MouseUp

private void Form1_Paint(Object sender,
    System.Windows.Forms.PaintEventArgs e)
{
    // Draw the rectangle...
    e.get_Graphics().DrawRectangle(new Pen(Color.get_Blue(), 
        penWidth), rcDraw);
} //Form1_Paint
' This example creates a PictureBox control on the form and draws to
 it. 
' This example assumes that the Form_Load event handler method is connected
 
' to the Load event of the form.
Private pictureBox1 As New
 PictureBox()

Private Sub Form1_Load(ByVal
 sender As Object, ByVal
 e As System.EventArgs) Handles MyBase.Load
    ' Dock the PictureBox to the form and set its background to white.
    pictureBox1.Dock = DockStyle.Fill
    pictureBox1.BackColor = Color.White
    ' Connect the Paint event of the PictureBox to the event handler
 method.
    AddHandler pictureBox1.Paint, AddressOf
 Me.pictureBox1_Paint

    ' Add the PictureBox control to the Form.
    Me.Controls.Add(pictureBox1)
End Sub 'Form1_Load


Private Sub pictureBox1_Paint(ByVal
 sender As Object, ByVal
 e As System.Windows.Forms.PaintEventArgs)
    ' Create a local version of the graphics object for the PictureBox.
    Dim g As Graphics = e.Graphics

    ' Draw a string on the PictureBox.
    g.DrawString("This is a diagonal line drawn on the control",
 _
        New Font("Arial", 10),
 Brushes.Red, New PointF(30.0F, 30.0F))
    ' Draw a line in the PictureBox.
    g.DrawLine(System.Drawing.Pens.Red, pictureBox1.Left, _ 
        pictureBox1.Top, pictureBox1.Right, pictureBox1.Bottom)
End Sub 'pictureBox1_Paint
// This example creates a PictureBox control on the form and draws to
 it.
// This example assumes that the Form_Load event handler method is
// connected to the Load event of the form.

private PictureBox pictureBox1 = new PictureBox();
private void Form1_Load(object sender, System.EventArgs
 e)
{
    // Dock the PictureBox to the form and set its background to white.
    pictureBox1.Dock = DockStyle.Fill;
    pictureBox1.BackColor = Color.White;
    // Connect the Paint event of the PictureBox to the event handler
 method.
    pictureBox1.Paint += new System.Windows.Forms.PaintEventHandler(this.pictureBox1_Paint);

    // Add the PictureBox control to the Form.
    this.Controls.Add(pictureBox1);
}

private void pictureBox1_Paint(object sender,
 System.Windows.Forms.PaintEventArgs e)
{
    // Create a local version of the graphics object for the PictureBox.
    Graphics g = e.Graphics;

    // Draw a string on the PictureBox.
    g.DrawString("This is a diagonal line drawn on the control",
        new Font("Arial",10), System.Drawing.Brushes.Blue,
 new Point(30,30));
    // Draw a line in the PictureBox.
    g.DrawLine(System.Drawing.Pens.Red, pictureBox1.Left, pictureBox1.Top,
        pictureBox1.Right, pictureBox1.Bottom);
}
   // This example creates a PictureBox control on the form and draws to
 it.
   // This example assumes that the Form_Load event handler method is
   // connected to the Load event of the form.
private:
   PictureBox^ pictureBox1;
   void Form1_Load( Object^ /*sender*/, System::EventArgs^ /*e*/
 )
   {
      pictureBox1 = gcnew PictureBox;

      // Dock the PictureBox to the form and set its background to white.
      pictureBox1->Dock = DockStyle::Fill;
      pictureBox1->BackColor = Color::White;

      // Connect the Paint event of the PictureBox to the event handler
 method.
      pictureBox1->Paint += gcnew System::Windows::Forms::PaintEventHandler( this,
 &Form1::pictureBox1_Paint );

      // Add the PictureBox control to the Form.
      this->Controls->Add( pictureBox1 );
   }

   void pictureBox1_Paint( Object^ /*sender*/, System::Windows::Forms::PaintEventArgs^
 e )
   {
      // Create a local version of the graphics object for the PictureBox.
      Graphics^ g = e->Graphics;

      // Draw a string on the PictureBox.
      g->DrawString( "This is a diagonal line drawn on the control"
,
         gcnew System::Drawing::Font( "Arial",10 ), System::Drawing::Brushes::Blue,
 Point(30,30) );

      // Draw a line in the PictureBox.
      g->DrawLine( System::Drawing::Pens::Red, pictureBox1->Left, pictureBox1->Top
,
         pictureBox1->Right, pictureBox1->Bottom );
   }
// This example creates a PictureBox control on the form and draws to
 it.
// This example assumes that the Form_Load event handler method is
// connected to the Load event of the form.
private PictureBox pictureBox1 = new PictureBox();

private void Form1_Load(Object sender, System.EventArgs
 e)
{
    // Dock the PictureBox to the form and set its background to white.
    pictureBox1.set_Dock(DockStyle.Fill);
    pictureBox1.set_BackColor(Color.get_White());

    // Connect the Paint event of the PictureBox to the event handler
 
    // method.
    pictureBox1.add_Paint(new System.Windows.Forms.PaintEventHandler(this.
        pictureBox1_Paint));

    // Add the PictureBox control to the Form.
    this.get_Controls().Add(pictureBox1);
} //Form1_Load

private void pictureBox1_Paint(Object sender,
 
    System.Windows.Forms.PaintEventArgs e)
{
    // Create a local version of the graphics object for the PictureBox.
    Graphics g = e.get_Graphics();

    // Draw a string on the PictureBox.
    g.DrawString("This is a diagonal line drawn on the control", 
        new Font("Arial", 10), System.Drawing.Brushes.get_Blue(),
 
        (PointF)new PointF(30, 30));

    // Draw a line in the PictureBox.
    g.DrawLine(System.Drawing.Pens.get_Red(), pictureBox1.get_Left(), 
        pictureBox1.get_Top(), pictureBox1.get_Right(), 
        pictureBox1.get_Bottom());
} //pictureBox1_Paint
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照


このページでは「.NET Framework クラス ライブラリ リファレンス」からPaintEventArgs.Graphics プロパティを検索した結果を表示しています。
Weblioに収録されているすべての辞書からPaintEventArgs.Graphics プロパティを検索する場合は、下記のリンクをクリックしてください。
 全ての辞書からPaintEventArgs.Graphics プロパティ を検索

英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

PaintEventArgs.Graphics プロパティのお隣キーワード
検索ランキング

   

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



PaintEventArgs.Graphics プロパティのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

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

©2025 GRAS Group, Inc.RSS