【】Top
【】VB.NET
【】VB6.0
【】メールマガジンの購読
【】メールマガジンの解除
【】会社概要
【】お問い合わせ
姉妹サイト「バーチャルコネクション!」はこちらです。
姉妹サイト「七福神のメールでビンゴ!」はこちらです。
●24時間365日の安心をあなたにAT-LINK専用サーバ・サービスお勧めのサーバです。
|
|
|
|
|
マウスで絵を描く
|
|
.NET でも、マウスを使って絵を描くことが可能です。
この機能を使えば、簡単に、 絵を描くアプリケーションや、 既存の画像に書き加えるといったものなど簡単に作成できます。
フォームに次の様なコードを記述します
-----------VB.NETコーディングここから-------------------
1.フォームに、ラベルコントロール、 ピクチャボックスコントロールを配置します。 下記は、デフォルトのオブジェクトの名前と配置を示しています。
┏━━━━━━━━━━━━━━━━━━━━┓ ┃PictureBox1 ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┗━━━━━━━━━━━━━━━━━━━━┛ ┏━━━┓┏━━━┓┏━━━┓┏━━━┓ ┃Label1┃┃Label2┃┃Label3┃┃Label4┃ ┗━━━┛┗━━━┛┗━━━┛┗━━━┛
2.ラベルコントロールの Label1 text プロパティに「]座標」と記述します。 Label3 text プロパティに「Y座標」と記述します。 ※説明用のためです。必須ではありません。
┏━━━━━━━━━━━━━━━━━━━━┓ ┃PictureBox1 ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┗━━━━━━━━━━━━━━━━━━━━┛
┏━━━┓┏━━━┓┏━━━┓┏━━━┓ ┃]座標┃┃Label2┃┃Y座標┃┃Label4┃ ┗━━━┛┗━━━┛┗━━━┛┗━━━┛
3.フォームで右クリックして、「コードの表示」を 選び、コード編集画面にし次のコードを記述します。
'モジュール変数として定義 Dim DrawFlg As Integer 'ドローモード Dim Gr As Graphics 'グラフィックオブジェクト Dim intX As Integer 'マウスポインタX Dim intY As Integer 'マウスポインタY
Private Sub Form1_Load(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles MyBase.Load PictureBox1.Image = New Bitmap(PictureBox1.Width, _ PictureBox1.Height)
'グラフィックオブジェクトを作成します。 Gr = Graphics.FromImage(PictureBox1.Image)
End Sub
Private Sub PictureBox1_MouseDown(ByVal sender As Object, _ ByVal e As System.Windows.Forms.MouseEventArgs) _ Handles PictureBox1.MouseDown
'ドローモード DrawFlg = True intX = e.X intY = e.Y
End Sub
Private Sub PictureBox1_MouseMove(ByVal sender As Object, _ ByVal e As System.Windows.Forms.MouseEventArgs) _ Handles PictureBox1.MouseMove
Label2.Text = e.X Label4.Text = e.Y
If DrawFlg = False Then Exit Sub
End If
'ドローモード Gr.DrawLine(Pens.Black, intX, intY, e.X, e.Y) '描画 PictureBox1.Refresh() 'ポインタをレジスト intX = e.X intY = e.Y
End Sub
Private Sub PictureBox1_MouseUp(ByVal sender As Object, _ ByVal e As System.Windows.Forms.MouseEventArgs) _ Handles PictureBox1.MouseUp
'ドローモード初期化 DrawFlg = False
End Sub
Private Sub Form1_Closing(ByVal sender As Object, _ ByVal e As System.ComponentModel.CancelEventArgs) _ Handles MyBase.Closing
'グラフィックオブジェクト解放 Gr.Dispose()
End Sub
4.ビルドして実行します。
5.フォームに表示された ピクチャボックスに、マウスを移動させ、左クリックを押しながら 絵を描いてみます。
6.フォームに表示された マウスが移動した場所に線が描かれます。
-----------VB.NETコーディングここまで-------------------
上記をカスタマイズして、線の色を変えたり、 線種を変えたりする事が簡単に可能です。
例えば、ピクチャボックスへ取り込んだ画像に マーキングをしてみるようなものが実現できます。
|
http://anetm.com/dev/d.cgi?SC=DTDTL&o=O77
Copyright(c)2001-2004 Ai Net Makoto 記事・情報の無断転載を禁止します。
|
|
|
|
|
|
|