*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*

<C#>
「ピクチャボックス上のImageにおけるマウスイベントへの対応 <イベント対応版クラスの作成>
 --- Imageへのマウスイベントが対応したクラスの作成」

のコード No.3

*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*

.






元のページ


元ページ

「<C# > ピクチャボックス上のImageにおけるマウスイベントへの対応 <イベント対応版クラスの作成>
 --- Imageへのマウスイベントが対応したクラスの作成」
http://note.chiebukuro.yahoo.co.jp/detail/n239008

 

記述量上限の制限で、ページを分けて記述しています。



 

 


 

本ページの前のページ


「ピクチャボックス上のImageにおけるマウスイベントへの対応 <イベント対応版クラスの作成>
 --- Imageへのマウスイベントが対応したクラスの作成」

のコード No.2
http://note.chiebukuro.yahoo.co.jp/detail/n240123

 

記述量上限の制限で、ページを分けて記述しています。






本ページの次のページ


「ピクチャボックス上のImageにおけるマウスイベントへの対応 <イベント対応版クラスの作成>
 --- Imageへのマウスイベントが対応したクラスの作成」

のコード No.4
http://note.chiebukuro.yahoo.co.jp/detail/n240125

 

記述量上限の制限で、ページを分けて記述しています。









はじめに


元ページの

「<C#> ピクチャボックス上のImageにおけるマウスイベントへの対応 <イベント対応版クラスの作成>
 --- Imageへのマウスイベントが対応したクラスの作成」

におけるコードをここに記述します。








画像クラスのコード



 

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;


// ピクチャボックス上のImageにおけるマウスイベントへの対応 <イベント対応版クラスの作成>
// --- Imageへのマウスイベントが対応したクラスの作成
namespace MouseEventImageClassForPicBox
{

    // ***********************************
    // 画像クラス
    // Image(画像)と、その位置座標を管理するクラス
    // ***********************************
    public partial class ImageData
    {
        public System.Drawing.Image Image;  // 画像
        public int X;   // 座標位置x値
        public int Y;   // 座標位置y値


        // 本クラスの画像を表示するピクチャボックス
        public System.Windows.Forms.PictureBox Owner;

 

        // 第1引数: 本クラスの画像を表示するピクチャボックス
        public ImageData(
            System.Windows.Forms.PictureBox Owner_Pic_Box,
            System.Drawing.Image Image_Data,
            int X_Data,
            int Y_Data)
        {

            // メンバー変数の設定
            Owner = Owner_Pic_Box;
            Image = Image_Data;
            X = X_Data;
            Y = Y_Data;


            // ピクチャボックスにおけるイベントプロシージャの登録
            this.Owner.MouseClick += new System.Windows.Forms.MouseEventHandler(this.pictureBox_MouseClick);
            this.Owner.MouseDown += new System.Windows.Forms.MouseEventHandler(this.pictureBox_MouseDown);
            this.Owner.MouseUp += new System.Windows.Forms.MouseEventHandler(this.pictureBox_MouseUp);
            this.Owner.MouseMove += new System.Windows.Forms.MouseEventHandler(this.pictureBox_MouseMove);

        }

 

 

        // ************************************
        // イベント発生関連の定義
        // ************************************

 

        //========================
        // マウスボタンクリックイベント発生の定義
        //========================


        // マウスクリック用イベントの定義
        //  --- 宣言された物をイベントとして登録
        public event System.Windows.Forms.MouseEventHandler MouseClick; // メッセージ伝達イベント

 

        //==============
        // マウスクリックイベント発生メソッド
        //  --- マウスをクリックする時の処理内容を定義したメソッド。
        // 第1引数: イベント データを格納している MouseEventArgs型オブジェクト
        public void OnMouseClick(
            System.Windows.Forms.MouseEventArgs pe)
        {

            if (MouseClick != null)
            {
                // クラスオブジェクト生成後に登録されたメソッド(イベントハンドラ)を実行
                MouseClick(this, pe);
            }

        }

 


        //========================
        // マウスボタン押下イベント発生の定義
        //========================


        // マウスボタン押下用イベントの定義
        //  --- 宣言された物をイベントとして登録
        public event System.Windows.Forms.MouseEventHandler MouseDown; // メッセージ伝達イベント

 


        //==============
        // マウスボタン押下イベント発生メソッド
        //  --- マウスボタンを押下する時の処理内容を定義したメソッド。
        // 第1引数: イベント データを格納している MouseEventArgs型オブジェクト
        public void OnMouseDown(
            System.Windows.Forms.MouseEventArgs pe)
        {

            if (MouseDown != null)
            {
                // クラスオブジェクト生成後に登録されたメソッド(イベントハンドラ)を実行
                MouseDown(this, pe);
            }

        }

 

        //========================
        // マウスポインター移動イベント発生の定義
        //========================


        // マウスポインター移動用イベントの定義
        //  --- 宣言された物をイベントとして登録
        public event System.Windows.Forms.MouseEventHandler MouseMove; // メッセージ伝達イベント

 

        //==============
        // マウスポインター移動イベント発生メソッド
        //  --- マウスポインターを移動する時の処理内容を定義したメソッド。
        // 第1引数: イベント データを格納している MouseEventArgs型オブジェクト
        public void OnMouseMove(
            System.Windows.Forms.MouseEventArgs pe)
        {

            if (MouseMove != null)
            {
                // クラスオブジェクト生成後に登録されたメソッド(イベントハンドラ)を実行
                MouseMove(this, pe);
            }

        }

 


        //========================
        // マウスボタン上昇イベント発生の定義
        //========================


        // マウスボタン上昇用イベントの定義
        //  --- 宣言された物をイベントとして登録
        public event System.Windows.Forms.MouseEventHandler MouseUp; // メッセージ伝達イベント


        //==============
        // マウスボタン上昇イベント発生メソッド
        //  --- マウスボタンが離される時(上昇する時)の処理内容を定義したメソッド。
        // 第1引数: イベント データを格納している MouseEventArgs型オブジェクト
        public void OnMouseUp(
            System.Windows.Forms.MouseEventArgs pe)
        {

            if (MouseUp != null)
            {
                // クラスオブジェクト生成後に登録されたメソッド(イベントハンドラ)を実行
                MouseUp(this, pe);
            }

        }


    }
}



さいごに


本ページの内容説明については、元ページを参照して下さい。