0

間隔が指定されているdbエントリが必要です。

1 つのタイマー tm_5 が 5 分ごとにエントリをチェックし、タイマー tm_10 がチェックするとします。

10分ごとのエントリ、

問題は、tm_10 ではなく tm_5 のエントリのみをチェックすることです。

C#.net 2005 と MS SQL Server 2005 を使用しています。

4

2 に答える 2

0

これを試してください (TimerTester という名前のフォームに label1 と label2 を追加してください)。

public partial class TimerTester : Form
{
    public TimerTester()
    {
        InitializeComponent();
    }
    Timer _t1;
    Timer _t2;
    int _it1 = 0, _it2 = 0;
    private void Form1_Load(object sender, EventArgs e)
    {
        _t1 = new Timer() { Interval = 1000 };            
        _t1.Tick += new EventHandler(_t1_Tick);
        _t2 = new Timer() { Interval = 2000 };
        _t2.Tick += new EventHandler(_t2_Tick);
        _t1.Start(); _t2.Start();
    }
    void _t1_Tick(object sender, EventArgs e)
    {
        label1.Text = "t1: " + (_it1++).ToString();
    }
    void _t2_Tick(object sender, EventArgs e)
    {
        label2.Text = "t2: " + (_it2++).ToString();
    }        
}

また、Threads.Timer ではなく Forms.Timer を使用する必要があることにも注意してください (または InvokeRequired を使用し、それが意味することを読んで理解してください)。

于 2010-03-15T09:18:20.107 に答える
0

このコードが機能するように、UI スレッドでラベルのテキストを変更する必要があります。ヘルプについては、Control.Invoke および Control.InvokeRequired を参照してください。

于 2010-03-15T09:52:41.070 に答える