基本上,我有一个计时器,一旦达到5000毫秒,我的主窗体的不透明度将设置为0.5 问题是,我无法从静态空白中改变我的表单的不透明度...... 这是我的代码,任何sugestions? :
public partial class Form1 : Form
{
public Form1()
{
myTimer.Tick += new EventHandler(TimerEventProcessor);
// Sets the timer interval to 5 seconds.
myTimer.Interval = 5000;
myTimer.Start();
}
public static void TimerEventProcessor(Object myObject,
EventArgs myEventArgs)
{
myTimer.Stop();
//Set Opacity here
}
}
答案 0 :(得分:1)
您的静态方法没有要使用的表单实例。
最简单的方法就是阻止它成为静态方法。没有明显的理由说明为什么你仍然希望它成为一种静态方法 - 或者为什么你希望myTimer
是静态的,我认为它是基于使用的
如果您已将其设为实例方法,则可以像往常一样更改不透明度,假设相关的Timer
为System.Windows.Forms.Timer
(因此它会如此)在正确的线程上滴答作响......)