winform动态创建多个pictureBox控件并响应不同的事件代码

winform动态创建多个pictureBox控件并响应不同的事件代码,在winform程序设计中,有时需要在同一个窗口中创建多个pictureBox同时加载显示多个图片。然后鼠标点击每一个图片做出不同的事件处理。
 
首先新建一个PictureBox控件

 PictureBox pb = new PictureBox();
为这个控件添加一个点击事件
 
 
 
如:

 pb.Click += new System.EventHandler(this.pictureBox_Click);//添加Click事件
 有这个基础,那么动态创建多个控件也是一件容易的事情
 代码如下:


        /// <summary>
        /// 图片创建控件,并初始化一共是96个
        /// </summary>
        private void createPicBoxList()
        {
            PictureBox pb = null;
            for (int j = 0; j < 8; j++)
            {
                for (int i = 0; i < 12; i++)
                {
                    pb = new PictureBox();
                    pb.BackColor = Color.White;
 
                    //通过这个标识记录不同的编号y在前面.记X从1开始索引,Y直接保存A...H这种
                    //已经转化为A1,A2,....H12这种格式,其中A的ASCII=65
                    pb.Tag = (Convert.ToChar(j + 65)).ToString() + (i + 1).ToString();
                    pb.Name = "pb";//通过这个Name标记所有PictureBox控件.
                    pb.Size = new Size(56, 56);//大小
                    pb.Location = new Point(i * 56, j * 56);//位置.
                    pb.Image = holesImg;//初始化图片Bitmap或者Image对象
                    pb.Click += new System.EventHandler(this.pictureBox_Click);//添加Click事件
                    this.groupBox.Controls.Add(pb);//加载到groupBox容器内
                }
            }
        }
以上各个参数根据自己实际需要修改,这里是仅是演示作用,上述代码中一共创建了96个控件和图片
 
下面点击每一个控件所响应的事件


本文来自: IT知道网(http://www.itwis.com) 详细出处参考:http://www.itwis.com/html/net/winform/20110701/10808.html

你可能感兴趣的:(image,null,WinForm)