public void SetrichTextBox(string value) { bool invokeRequired = rtb_log.InvokeRequired; if (invokeRequired) { delInfoList method = new delInfoList(SetrichTextBox); rtb_log.Invoke(method, new object[] { value + "\n" }); } else { //bool flag = this.rtb_log.Lines.Length > 100; //if (flag) //{ // this.rtb_log.Clear(); //} rtb_log.Focus(); rtb_log.Select(rtb_log.TextLength, 0); rtb_log.ScrollToCaret(); rtb_log.AppendText(value + "\n"); } }
public static void setControlText(Control control, string value) { value = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + " " + value + Environment.NewLine; if (control.InvokeRequired)//其它线程调用 { delInfoList d = new delInfoList(setControlText); control.Invoke(d, new object[] { control, value }); } else//本线程调用 { control.Text += value; control.Refresh(); } }
/// <summary> /// Processing message showing /// </summary> /// <param name="mess"></param> public void MessageShowing(string mess) { if (richTextBoxMessage.InvokeRequired) { delInfoList delInfo = new delInfoList(MessageShowing); richTextBoxMessage.Invoke(delInfo, mess); } else { if (richTextBoxMessage.Lines.Length > 300) // >300 messages, clean { richTextBoxMessage.Clear(); } richTextBoxMessage.Focus(); richTextBoxMessage.Select(richTextBoxMessage.TextLength, 0); richTextBoxMessage.ScrollToCaret(); richTextBoxMessage.AppendText(mess); } }
private void SetrichTextBox(string value) { if (richTextBox1.InvokeRequired) { delInfoList d = new delInfoList(SetrichTextBox); richTextBox1.Invoke(d, value); } else { if (richTextBox1.Lines.Length > 100) { richTextBox1.Clear(); } richTextBox1.Focus(); richTextBox1.Select(richTextBox1.TextLength, 0); richTextBox1.ScrollToCaret(); richTextBox1.AppendText(value); } }
private delegate void delInfoList(string text);//申明委托,防止不同线程设置richtextbox时出现错误 void SetrichTextBox(string value) { if (richTextBox_RX.InvokeRequired) { delInfoList d = new delInfoList(SetrichTextBox); richTextBox_RX.Invoke(d, value); } else { if (richTextBox_RX.Lines.Length > 100) { richTextBox_RX.Clear(); } //========richtextbox滚动条自动移至最后一条记录 //让文本框获取焦点 richTextBox_RX.Focus(); //设置光标的位置到文本尾 richTextBox_RX.Select(richTextBox_RX.TextLength, 0); //滚动到控件光标处 richTextBox_RX.ScrollToCaret(); richTextBox_RX.AppendText(value); } }