当前位置:编程学习 > C#/ASP.NET >>

c#问题

现在在form上有一个panel,在panel上添加了几个picturebox,想运行的时候可以拖动这些个picture,但是在panel的MouseDown以及MouseMove和MouseUp事件里做的画感觉不对啊,picture是动态添加到panel中的,这些MouseXX的事件应该怎么添加呢?是不是在新建一个picture的时候直接给他绑定他的MouseXX事件?
--------------------编程问答-------------------- 还有一个问题就是  
protected override void OnMouseDown(MouseEventArgs e)

这个事件是不是继承某个控件的时候才写的方法?在一个panel中没有OnMouseDown事件,只有MouseDown事件。。 --------------------编程问答-------------------- PictureBox pic=new PictureBox();

pic.OnMouseDown+=//按tag鍵會自動出來了

panel.Controls.Add(pic); --------------------编程问答--------------------
引用 2 楼 liuberlin 的回复:
PictureBox pic=new PictureBox();

pic.OnMouseDown+=//按tag鍵會自動出來了

panel.Controls.Add(pic);


这个是重写方法~ --------------------编程问答--------------------
private void button1_Click(object sender, EventArgs e)
{
    TestPictureBox(2);
}

List<PictureBox> picList = new List<PictureBox>();
public void TestPictureBox(int count)
{
    int ow = 0;
    for (int i = 0; i < count; i++)
    {
        //创建
        PictureBox p = new PictureBox();
        //设置
        p.Tag = p.Name = "Pic" + i.ToString();
        p.Image = Image.FromFile("myPicPath" + i.ToString() + ".jpg");//指定图片
        p.Size = p.Image.Size;//指定尺寸
        p.Left += ow;//指定位置
        ow = p.Right;
        p.Show();
        //添加事件
        p.MouseDown += CustomPictureBox_Click;
        //添加
        this.Controls.Add(p);   //添加到窗体
        picList.Add(p);         //添加到记录的列表
    }
}

void CustomPictureBox_Click(object sender, EventArgs e)
{
    PictureBox p = sender as PictureBox;
    if (p == null) return;
    MessageBox.Show(p.Name);
}
--------------------编程问答-------------------- 给你个参考看看 --------------------编程问答-------------------- 已解决 谢谢。
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,