我正在用 C# 编写一个屏幕保护程序。我希望它执行以下操作:
从一段文字开始。大约 3 秒或更长时间后,隐藏文本并显示图像。在接下来的 3 秒后,隐藏图像显示文本并继续循环,直到用户执行退出屏幕保护程序的操作。
我所做的:我从一个简单的文本标签和一个计时器控件开始。我能够在每 3 秒后获得屏幕上的文本标签更改位置。我更新了我的代码以包含一个图片框,并且在我的 timer_tick 方法中,我插入了一个 if-else 语句来检查,当调用该方法时,如果显示了 textlabel,则隐藏它并显示图片框。否则,如果显示图片框,则隐藏它并显示文本框。代码如下所示:
private void Form1_Load(object sender, EventArgs e)
{
Cursor.Hide();
TopMost = true;
moveTimer.Interval = 3000;
moveTimer.Tick += new EventHandler(moveTimer_Tick);
moveTimer.Start();
}
private void moveTimer_Tick(object sender, System.EventArgs e)
{
//Move text to new Location
//textLabel.Left = rand.Next(Math.Max(1, Bounds.Width - textLabel.Width));
//textLabel.Top = rand.Next(Math.Max(1, Bounds.Height - textLabel.Height));
if (pictureBox1.Enabled == true)
{
pictureBox1.Hide();
textLabel.Show();
}
if (textLabel.Enabled == true)
{
textLabel.Hide();
pictureBox1.Show();
}
}
这就是问题所在:当我运行屏幕保护程序时,屏幕以文本开始,3 秒后变为图片并停在那里。
我该怎么做才能让它在一个连续的循环中移动,显示/隐藏文本标签或图片框?
我是否以正确的方式实现了这一点?
请清晰简洁的解释/答案将不胜感激。
谢谢!