public partial class frSpecial : Form
{
private FileInfo[] fis;
private DirectoryInfo di;
private string imgPic = AppDomain.CurrentDomain.SetupInformation.ApplicationBase + @"img/";
private Bitmap[] _bitmap;
public frSpecial()
{
InitializeComponent();
di = new DirectoryInfo(imgPic);
fis = di.GetFiles();
this._bitmap = new Bitmap[642];
for (int i = 0; i < 642;i++ )
{
this._bitmap[i] = new Bitmap(fis[i].FullName);
}
}
private void Form0_KeyDown(object sender, KeyEventArgs e)
{
isKeyDown = !isKeyDown;
}
bool isKeyDown = false;
private Random rand = new Random();
private void timer1_Tick(object sender, EventArgs e)
{
if(isKeyDown == false)
{
this.pictureBox1.Image = (Image)this._bitmap[rand.Next(642)];
}
}
}
这是窗体上的代码片段,图片抽奖实现方式是这样的:
窗体加载时,把部分图片加载进内存中,然后通过随机数生成配合Timer事件进行图片更替,当点击键盘上任何键时,抽奖会暂停,并且抽出中奖的人。
我现在有些问题,就是当我抽中了人员后,是应该对表中的中奖人中奖状态进行修改,还是在另外生成一个excel表,把中奖的人信息放进新表中,哪种效率更快一些?还有,我试过抽奖开始时,先运行FLASH,然后点击后生成一个图片,但是图片会顿一下,之间有一个时间差,时间紧迫,请大家给些建议