void AddText(string str) { if (tbRecieve.InvokeRequired) { callbackAddText cbat = new callbackAddText(AddText); Invoke(cbat, new object[] { str }); } else { tbRecieve.AppendText(str); } }
void AddText(string str) { if (tbRecieve.InvokeRequired) { callbackAddText cbat = new callbackAddText(AddText); object[] oArr = { str }; Invoke(cbat, oArr); } else { tbRecieve.AppendText(str + "\r\n"); } }
//void AddText(string str) // callback함수가 invoke할 실제 함수 void AddText(string str) // void AddText() { if (tbReceive.InvokeRequired) { callbackAddText cbat = new callbackAddText(AddText); Invoke(cbat, new object[] { str }); //Invoke(cbat); } //else tbReceive.AppendText(TmpString); else { tbReceive.Text += str; // tbReveive.AppendText(str) 과 동일 } }
delegate void callbackAddText(string s); // AddText에 대한 call back함수 void AddText(string str) { if (tbRecieve.InvokeRequired) { callbackAddText cbat = new callbackAddText(AddText); object[] oArr = { str }; // oArr 어레이에 직접 str을 입력하기 때문에 new 할 필요 X Invoke(cbat, oArr); // invoke에 의해 재호출 // => Invoke(cbat, new object[] { str }); 와 동일 } else { tbRecieve.AppendText(str); } }