2014-12-03 79 views
0
private void textBox1_KeyDown(object sender, KeyEventArgs e) 
    { 
     if (e.KeyCode == Keys.Enter) 
      textBox2.Focus(); 
    } 

    private void textBox2_KeyDown(object sender, KeyEventArgs e) 
    { 
     if (e.KeyCode == Keys.Enter) 
      CursorTest(); 

    } 

    private void button4_Click(object sender, EventArgs e) 
    { 
     CursorTest(); 
    } 


    private void CursorTest() 
    { 
     Cursor.Current = Cursors.WaitCursor; 

     for (int i = 0; i < 100; i++) 
      System.Diagnostics.Debug.WriteLine(i.ToString()); 

     Cursor.Current = Cursors.Default; 

    } 

的情況下1:我點擊將Button4, - CursorTest()顯示waitcursorTextBox類netCF中Click和Focus()有什麼區別?

案例2:我輸入 'ENTER' 鍵上textBox1的,並再次將焦點移動到TextBox2中

,並輸入 'ENTER' 鍵上TextBox2中 - CursorText()不會出現waitcursor。案例3:我只需點擊textBox2並輸入'ENTER' - CursorText()出現waitcursor。

如何在所有情況下顯示Wait-Cursor? Click和Focus()有什麼區別?

+0

您的程序調用CursorTest函數嗎?你也必須考慮你的For-loop。 100個loopruns的WaitCursor在標準機器上少於1毫秒。 – Horius 2014-12-03 08:47:46

+0

是的。我的程序調用'CursorTest()'和'CursorTest()'花了約5秒。 CursorTest只是簡單的測試功能。真正的功能是花費更多的時間。 – kwonv2 2014-12-04 00:03:09

回答

0

檢查TextBox.TextChanged事件並從那裏調用CursorTest()。那可行。

private void textBox1_TextChanged(object sender, EventArgs e) 
    { 
     CursorTest(); 
    } 
相關問題