假设我有一个配置了10秒(10k ms)间隔的Windows窗体计时器:
myTimer.Interval = 10000;
Run Code Online (Sandbox Code Playgroud)
我想启动它并Tick马上启动它:
myTimer.Start();
myTimer_Tick(null, null);
Run Code Online (Sandbox Code Playgroud)
最后一行有效,但是有更好或更合适的方式吗?
此问题与C#有关,但也可能适用于其他语言.我预计不会使用以下代码:
using System.Windows.Forms;
class MyForm : Form
{
private Timer myTimer;
private Button myButton;
public MyForm()
{
// Initialize the components, etc.
myTimer.Tick += new EventHandler( myTimer_Tick );
myButton.Click += new EventHandler( myButton_Click );
myTimer.Start();
}
private void myTimer_Tick( object sender, EventArgs eventArgs )
{
myTimer.Stop();
// also, I see a lot of usage of
// Timer.Enabled = true/false instead of -^
myButton_Click( this, ea /* or event EventArgs.Empty, or null */ );
return;
}
private void myButton_Click( object sender, …Run Code Online (Sandbox Code Playgroud)