[Tips][PictureBox] 図形や文字を描画する

PictureBoxコントロールに図形や文字を描画するにはGraphicsオブジェクトを使用します。

はじめに PictureBoxコントロールのCreateGraphicsメソッドでGraphicsオブジェクトを作成します。

次に、作成したGraphicsオブジェクトを使用して図形や文字を描画します。

(GraphicsオブジェクトのDrawLine, DrawEllipse,DrawStringといったメソッドを使用)

最後にリソースを解放します。

下記はPictureBoxに図形や文字を描画する例です。

[図形を描画]ボタンをクリックすると描画を行います。

VBの例

' [描画]ボタンクリック時の処理
Private Sub btnDraw_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDraw.Click
    Dim objPen = New Pen(System.Drawing.Color.Blue, 2)
    Dim objFont = New Font("MS Pゴシック", 15)
    Dim objGrp As Graphics = PictureBox1.CreateGraphics

    ' 直線を引く
    objGrp.DrawLine(objPen, 20, 20, 200, 200)
    ' 楕円を描く
    objGrp.DrawEllipse(objPen, 10, 10, 190, 190)
    ' 楕円を描く
    objGrp.DrawString("描画テスト", objFont, Brushes.Red, 80, 100)

    ' リソースを解放する
    objPen.Dispose()
    objFont.Dispose()
    objGrp.Dispose()
End Sub

C#の例

// [描画]ボタンクリック時の処理
private void btnDraw_Click(object sender, EventArgs e)
{
    Pen objPen = new Pen(System.Drawing.Color.Blue, 2);
    Font objFont = new Font("MS Pゴシック", 15);
    Graphics objGrp = pictureBox1.CreateGraphics();

    // 直線を引く
    objGrp.DrawLine(objPen, 20, 20, 200, 200);
    // 楕円を描く
    objGrp.DrawEllipse(objPen, 10, 10, 190, 190);
    // 文字を描画する
    objGrp.DrawString("描画テスト", objFont, Brushes.Red, 80, 100);

    // リソースを解放する
    objPen.Dispose();
    objFont.Dispose();
    objGrp.Dispose();
}

“[Tips][PictureBox] 図形や文字を描画する” への1件の返信

  1. ピンバック: [Tips][PictureBox] まとめ

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください