标题:怎样随机在 panel容器中 排布 button 控件
取消只看楼主
hcx888
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2013-4-17
结帖率:70%
已结贴  问题点数:18 回复次数:10 
怎样随机在 panel容器中 排布 button 控件

就好像,上图一样,三个容器里面是有 三个按钮控件的,当我点击一下 按钮4 三个容器里面的按钮控件会出现   

问题:怎么可以 让那三个按钮 随机 排布在不同的容器里面 (比如 按钮1 可以在 容器 1,2,3 都可以出现)

如果我不止三个容器和三个按钮,也怎么解决····
搜索更多相关主题的帖子: 按钮 button 
2013-05-08 12:33
hcx888
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2013-4-17
得分:0 
求助
2013-05-08 12:33
hcx888
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2013-4-17
得分:0 
回复 3楼 lantian8134
按钮我一开始是 在容器里面隐藏起来的 每个容器只放一个按钮的 每个容器都改了名字是 P1 P2 P3 到 P32  按钮也是 button1 到 button32  那怎么写啊?

[ 本帖最后由 hcx888 于 2013-5-9 16:49 编辑 ]
2013-05-09 16:37
hcx888
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2013-4-17
得分:0 
非常感谢
2013-05-10 18:17
hcx888
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2013-4-17
得分:0 
回复 5楼 lantian8134
有点问题了,测试了几遍

((Button)p.Controls[0]).Visible = true;

 如果 有一个容器没有放东西的时候,这一句就报错了



[ 本帖最后由 hcx888 于 2013-5-10 21:12 编辑 ]
2013-05-10 21:09
hcx888
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2013-4-17
得分:0 
回复 8楼 lantian8134
还是不行喔,加了判断还是会同样一句代码出异常
2013-05-10 22:06
hcx888
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2013-4-17
得分:0 
回复 10楼 lantian8134
是同样一个异常信息

我容器都只放一个按钮的

2013-05-10 22:39
hcx888
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2013-4-17
得分:0 
回复 10楼 lantian8134
是同样一个异常信息

我容器都只放一个按钮的




判断的语句似乎没起作用
2013-05-10 22:39
hcx888
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2013-4-17
得分:0 
删除之后,它又出现这种错误了   这是下面的代码

2013-05-14 18:07
hcx888
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2013-4-17
得分:0 
程序代码:
for (int i = 0; i < count; i++)
            {
                int val = random.Next(count);
                if (val != i)
                {
                        temp = panels[i].Controls[0] as Button;
                        panels[i].Controls.Clear();
                        panels[i].Controls.Add(panels[val].Controls[0] as Button);
                        panels[val].Controls.Clear();
                        panels[val].Controls.Add(temp);
                }
            }


找到问题了,容器里面的按钮控件 没有足够它预期的数目!!怎么在这里再加判断??就像下面这种判断就可以

if (p.HasChildren)
                    ((Button)p.Controls[0]).Visible = true;


谢谢
2013-05-16 20:00



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-406497-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.347107 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved