2
私はPicturebox
に割り当てられたイメージを描画するための簡単な例を作成しました。 MouseDown
とMouseUp
というイベントを処理し、現在のマウス位置を取得し、MouseUp
イベントの最後に線を描画します。描画と更新PictureBox
private void Form1_Load(object sender, EventArgs e)
{
Bitmap image = new Bitmap("myImage.png");
pictureBox1.Image = image;
}
Point From, To;
private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
{
From = new Point(e.X, e.Y);
}
private void pictureBox1_Paint(object sender, PaintEventArgs e)
{
e.Graphics.DrawLine(Pens.Red, From, To);
}
private void pictureBox1_MouseUp(object sender, MouseEventArgs e)
{
To = new Point(e.X, e.Y);
pictureBox1.Refresh();
}
コードは動作しますが、それは最初に初期画像の上に常に描画し、私はアップデート(画像上で作成した新しいライン)上に描画したいです。
私の質問がはっきりしたことを願っています。
ありがとうございました。あなたはこれを試すことができ
ないその明確ではありません。そのコードは、画像ボックスの場所を超えて画像を描画していません。 – Plutonix
@Plutonix画像に描画しないということはどういう意味ですか? – Slashy
渡された 'e.Graphics'はコントロールのためのものです。実際のイメージにそれらの行を追加することはありません。それは彼らがイメージの一部であるように見え、それはあなたが望むものであるかもしれません。それは明確ではありません。 – Plutonix