各位高手,请帮忙啊!!!(关于C#) 有一排picturebox控件,我点击了一个,后续代码中,我想知道之前我点击了哪个picturebox控件,请问如何获取。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 DoIt(object sender,EventArgs e){picturebox pb1=(picturebox)sender;......} 如果你想在众多的picturebox中找到你点击的其中一个,那么你得把这些所有的picturebox放在同一个容器中,然后再循环这个容器中的所有picturebox。当然在这之前你得定义一个ClickName,用ClickName去得到你点击的picturebox名字。 假设你的picturebox的鼠标点击事件的响应函数是: private void pictureBox3_Click(object sender, EventArgs e) { PictureBox p = sender as PictureBox; MessageBox.Show(p.Name); }那么,你将所有的pictruebox的click事件都设置为这个函数,那么点击不同的picturebox的时候,函数中p就指向了你点击的picturebox了 超级期待您的进一步指导,我理解了你的意思,可是还是不知道怎么操作,你有没有相关的代码或者什么的,发给我一下。期待ing~ 你的picturebox必然是有事件的,1、如果每个picturebox都有一个唯一的单击事件的话那就可以写死,做到一一对应,但这样比较麻烦。2、如果是共用一个事件可以通过事件的sender参数获得控件名,picturebox pb=(picturebox)sender;此时pb就是你点击的那个picturebox控件了 我是想在picturebox4中知道之前那个p.Name(也就是picturebox3),但是picbox4中的sender指的是picbox4,并不是picbox3.假如定义成全局的话,有没有sender了。 Form上面放了4个PictureBox,名称依次为PictureBox1~PictureBox4后台代码: private PictureBox gpb; public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { foreach (Control c in this.Controls) { if (c is PictureBox) { PictureBox pb = (PictureBox)c; c.Click += new EventHandler(c_Click); } } } void c_Click(object sender, EventArgs e) { if (gpb != null) { MessageBox.Show("上一个PictureBox的Name:" + gpb.Name); } PictureBox pb = (PictureBox)sender; gpb = pb; MessageBox.Show("当前PictureBox的Name:" + gpb.Name); } combobox出错求解决~ UDP为何不能传送大文件 在数据库里加一条数据程序就出错 请问各位,固定richtextbox 的宽度,然后让它的高度根据输入的内容自动适应,有什么办法? 新学C#有一个问题 学习C语言之后的困惑~ 关于异步通讯的问题(续) 到底是AMD的CPU速度快还是Intel的CPU速度快? 关于执行多次Sql查询的问题 Component是什么? 请教IStream和IFileSystemImage的释放问题 C# web程序关于打印机的问题,高手指点下
{
picturebox pb1=(picturebox)sender;
......
}
private void pictureBox3_Click(object sender, EventArgs e)
{
PictureBox p = sender as PictureBox; MessageBox.Show(p.Name);
}
那么,你将所有的pictruebox的click事件都设置为这个函数,那么点击不同的picturebox的时候,函数中p就指向了你点击的picturebox了
1、如果每个picturebox都有一个唯一的单击事件的话那就可以写死,做到一一对应,但这样比较麻烦。
2、如果是共用一个事件可以通过事件的sender参数获得控件名,
picturebox pb=(picturebox)sender;
此时pb就是你点击的那个picturebox控件了
{
InitializeComponent();
} private void Form1_Load(object sender, EventArgs e)
{
foreach (Control c in this.Controls)
{
if (c is PictureBox)
{
PictureBox pb = (PictureBox)c;
c.Click += new EventHandler(c_Click);
}
}
} void c_Click(object sender, EventArgs e)
{
if (gpb != null)
{
MessageBox.Show("上一个PictureBox的Name:" + gpb.Name);
}
PictureBox pb = (PictureBox)sender;
gpb = pb;
MessageBox.Show("当前PictureBox的Name:" + gpb.Name);
}