foreach (Control c in this.Controls) { PictureBox pb = c as PictureBox; if (pb != null) { // todo } }
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) { for (int i = 0; i < Controls->Count; i++) { if (Controls[i]->GetType()->Name == "PictureBox") { System::Diagnostics::Debug::WriteLine(Controls[i]->Name); System::Diagnostics::Debug::WriteLine(((PictureBox^)Controls[i])->Image); } } } 遍历好说,图片比较,就比较复杂了。
有多个PictureBox,我想遍历每个PictureBox看看里面的图片。 并且比较每个控件的图片是否有相同。不同,怎么算不同呢,只是名字还是路径,还是图片的内容,是比较大小,还是象素,你总要有个规定把,你可以把picture控件放进panel中,然后循环panel的controls就可以了 foreach(control c in panel.controls) { if(c is picture) { //处理每个图片吧 } }
foreach (Control c in this.Controls)
{
PictureBox pb = c as PictureBox;
if (pb != null)
{
// todo
}
}
System::Void button1_Click(System::Object^ sender, System::EventArgs^ e)
{
for (int i = 0; i < Controls->Count; i++)
{
if (Controls[i]->GetType()->Name == "PictureBox")
{
System::Diagnostics::Debug::WriteLine(Controls[i]->Name);
System::Diagnostics::Debug::WriteLine(((PictureBox^)Controls[i])->Image);
}
}
}
遍历好说,图片比较,就比较复杂了。
并且比较每个控件的图片是否有相同。不同,怎么算不同呢,只是名字还是路径,还是图片的内容,是比较大小,还是象素,你总要有个规定把,你可以把picture控件放进panel中,然后循环panel的controls就可以了
foreach(control c in panel.controls)
{
if(c is picture)
{
//处理每个图片吧
}
}