问题描述
我使用过treeview点击树节点(好友分组)的时候出现panel(好友列表)后来panel会遮住其他的树节点然后改成用label点击label(好友分组)的时候出现panel(好友列表)然后把没点到的label坐标下移到panel后面现在老是出现label位移的错误,要么少了要么多了panel的位移没有错...我的思路代码如下//新建个label数组Label[]lblgroup=newLabel[15];//最开始的分组出现位置Pointplp=newPoint(0,25);//在窗体读取的时候动态生成15个存分组信息的labelprivatevoidMainForm_Load(objectsender,EventArgse){for(inti=0;i<15;i++){lblgroup[i]=newLabel();lblgroup[i].AutoSize=false;lblgroup[i].Text=i.ToString();lblgroup[i].Location=pgp;lblgroup[i].Height=10;lblgroup[i].BackColor=Color.Transparent;//这是最外层装label的panellblgroup[i].Parent=pnlSuspendShowInfo;lblgroup[i].Tag=i;//给所有label共用一个点击事件lblgroup[i].Click+=newSystem.EventHandler(this.lblLever_Click);pgp.Y+=23;}}//当label被点击的时候触发privatevoidlblLever_Click(objectsender,EventArgse){//获取当前点击的labelLabellbl=(Label)sender;//判断panel将要在哪个label下出现for(inti=0;i<Convert.ToInt32(lbl.Tag);i++){plp.Y+=20;}pnlSuspendShowInfo.Width=285;pnlSuspendShowInfo.Height=365;//循环创建10个panel(好友信息)for(inti=0;i<10;i++){Panelpl=newPanel();pl.Parent=pnlSuspendShowInfo;pl.BackColor=Color.Red;pl.Width=260;pl.Height=20;pl.Location=plp;PictureBoxpb=newPictureBox();pb.Parent=pl;pb.Width=20;pb.Height=20;pb.Location=pbp;pb.BackgroundImage=img2.Images[i];Labellb=newLabel();lb.Parent=pl;lb.Width=245;lb.Height=15;lb.Location=plbp;lb.Text="桂雏菊";plp.Y+=22;}b=true;//遍历最外层panel的所有控件foreach(ControliteminpnlSuspendShowInfo.Controls){//如果是label的话if(itemisLabel){//把当前点击的label下面的所有label坐标改变,上面的label不需要更改坐标if(item.Text!=lbl.Text&&Convert.ToInt32(item.Tag)>Convert.ToInt32(lbl.Tag)){for(inti=0;i<Convert.ToInt32(item.Tag);i++){item.Location=plp;plp.Y+=20;}}}}}代码就是这样,老是错位...请各位大神帮帮忙...马上就要交作业了...如果有更好的方法请留下您的足迹...谢谢
解决方案
解决方案二:
可以试一下Microsoft.Samples.Windows.Forms.TaskPane.TaskPane这个控件,最近我也是刚找到这个控件用的,感觉还行你上网搜一下吧,控件操作蛮容易的
解决方案三:
QQ面板,用C#技术还是不能完全模仿的,皮肤那里用的是用的那个牛逼的皮肤解决方案,第三方的
解决方案四:
引用1楼的回复:
可以试一下Microsoft.Samples.Windows.Forms.TaskPane.TaskPane这个控件,最近我也是刚找到这个控件用的,感觉还行你上网搜一下吧,控件操作蛮容易的
嗯嗯谢谢了。
解决方案五:
引用1楼的回复:
可以试一下Microsoft.Samples.Windows.Forms.TaskPane.TaskPane这个控件,最近我也是刚找到这个控件用的,感觉还行你上网搜一下吧,控件操作蛮容易的
这个控件我找不到下载的地方==