问题描述
privatevoidMyKTV_GS_Load(objectsender,EventArgse){KTV_helprr=newKTV_help();//MessageBox.Show(""+NO1);//MessageBox.Show(""+Sex1);stringsql=string.Format("select[singer_name],[singer_photo_url]from[dbo].[singer_info]where[singertype_id]={0}and[singer_gender]='{1}';",NO1,Sex1);SqlDataReaderfs=rr.cx(sql);intx=10;inty=10;inti=0;stringname;while(fs.Read()){stringPURL=@"F:ktv项目资料Ktv歌手头像图片男图片"+fs["singer_photo_url"].ToString();//stringPURL=@"F:ktv项目资料Ktv歌手头像图片男图片陈学冬.jpg";//新建图片控件PictureBoxaa=newPictureBox();//将图片的路径加入控件aa.Image=Image.FromFile(PURL);//aa.SizeMode=PictureBoxSizeMode.StretchImage;//设置图片控件的长宽aa.Size=newSystem.Drawing.Size(100,80);//设置图片控件与窗口对应的坐标aa.Location=newSystem.Drawing.Point(x,y+30);//创建单击事件aa.Click+=newSystem.EventHandler(this.tt);//;this.Load+=newSystem.EventHandler(this.Form1_Load);//新建文字控件Labelnn=newLabel();//将数据库的名字加入到文字控件中name=fs["singer_name"].ToString();//label背景颜色设置为透明nn.BackColor=Color.Transparent;//设置label文字颜色为天蓝色nn.ForeColor=Color.Aqua;//nn.ForeColor=Color.(255,128,255);nn.Text=name;//设置文字控件与窗口对应的坐标nn.Location=newSystem.Drawing.Point(x+30,y+120);this.Controls.Add(aa);this.Controls.Add(nn);//设置控件之间的边距x+=110;i++;if(i%6==0)//当同行有6个控件时自动换行{y+=120;x=10;}}补充://提问:如何在Form1设定点击pictruebox点击事件并传递相对应的label控件的值并返回给form2?
解决方案
解决方案二:
坐等大神解惑~~谢谢!
解决方案三:
各位大大,求帮忙呀~~急求呀!谢谢大大们!!
解决方案四:
aa.Click+=newSystem.EventHandler(this.tt);这不就是注册事件么然后在tt里,将sender强制转picturebox,就是点击的那个picturebox你可以给它们赋值成不同的name,比如pic0,pic1,pic2...然后replace("pic",""),替换掉没有用的部分,数字转int型,就是序号了然后定义个label[]数组,把每个pic要操作的label放数组里点了Pic,取出序号,到数组里找对应的label,取text,再传递给form2
解决方案五:
引用3楼Z65443344的回复:
aa.Click+=newSystem.EventHandler(this.tt);这不就是注册事件么然后在tt里,将sender强制转picturebox,就是点击的那个picturebox你可以给它们赋值成不同的name,比如pic0,pic1,pic2...然后replace("pic",""),替换掉没有用的部分,数字转int型,就是序号了然后定义个label[]数组,把每个pic要操作的label放数组里点了Pic,取出序号,到数组里找对应的label,取text,再传递给form2
大大,由于我是新人,你说的我可以理解,不会转为代码呀老师都没教过,能否帮我写下代码呢???我不会代码的格式!!