关于System.Windows.Forms.Timer组件问题,比较复杂请高手指教
dataGridView1.DataSource = MumeralTVSqlCmd.ViewDispatch();
System.Windows.Forms.Timer timer = new System.Windows.Forms.Timer();
timer.Enabled = true;
timer.Interval = 10000;
timer.Tick += new EventHandler(timer_Tick);
void timer_Tick(object sender, EventArgs e)
{
MessageBox.Show( "D ");
//执行的时候会弹出2个show,用一个int 变量执行++的话 只加一次
但是我现在比较两个 DataTable 实现报警也会出现两次 具体代码如下
}
另外的疑问:主要是变量 i,它的值在if里面居然不变了,会固定死,j,反而会正常变化.(i 是在判定里面不变化,在 i = MumeralTVSqlCmd.ViewDispatch().Rows.Count;数字是正常) 请高手指教啊 我都要哭了
int i, j;
void timer_Tick(object sender, EventArgs e)
{
i = dataGridView1.RowCount;
j = MumeralTVSqlCmd.ViewDispatch().Rows.Count;
toolStripButton1.Text = i.ToString();
toolStripButton2.Text = j.ToString();
if (i - 1 < j)//比较是否有新数据
{
notifyIcon1.Visible = true;
notifyIcon1.ShowBalloonTip(1000, i.ToString() + " " + j.ToString(), "dd ", ToolTipIcon.Info);
}
}
------解决方案--------------------修改timer的tick事件如下
void timer_Tick(object sender, EventArgs e)
{
timer.Enabled = false;//Disable timer
MessageBox.Show( "D ");
timer.Enabled = true;//Enable timer
}
------解决方案--------------------久违的愚翁又出现了
------解决方案--------------------直接MessageBox.Show( "D ");
也不会出现弹出两次的问题...
继点调试一下先..
------解决方案--------------------