【发布时间】:2014-04-10 21:18:30
【问题描述】:
我正在制作一些有很多面板的游戏。它们的名字是 polje1、polje2、polje3 等……对于其中一些,我需要调用 Invalidate() 方法来刷新绘制事件,问题是我不想使用 50 个 if 或 switch 函数。
那么,我可以做类似("polje" + number).Invalidate();的事情吗
如果你不明白,这里有一些代码:
Random rnd = new Random();
private Panel polje1;
private Panel polje2;
private Panel polje3;
private Panel polje4;
private Panel polje5;
private Panel polje6;
private Panel polje7;
private Panel polje8;
private Panel polje9;
private Panel polje10;
definition bla bla bla
...
private void button1_MouseClick(object sender, MouseEventArgs e)
{
int pp = rnd.Next(1,7);
SetCurrentField(pp);
("polje" + pp).Invalidate();
}
Invalidate() 方法都不是一个选项,因为表单在闪烁!我已经上课并执行了 DoubleBuffered();
【问题讨论】:
-
谢谢哥们,这正是我需要的!