public static void RtbWrite_Limit(RichTextBox rtb, string str) { int line, tmpStart, tmpEnd; if (rtb == null) { return; } if (rtb.InvokeRequired) { RtbWriteCB handle = new RtbWriteCB(RtbWrite_Limit); rtb.Invoke(handle, rtb, str); } else { line = rtb.Lines.Length; if (line > 0x400) { tmpStart = rtb.GetFirstCharIndexFromLine(0); // 第一行第一個字符的索引 tmpEnd = rtb.GetFirstCharIndexFromLine(0x200); //第n/2行第一個字符的索引 rtb.Text = rtb.Text.Remove(tmpStart, tmpEnd); } rtb.AppendText(str); } }
public static void RtbWrite(RichTextBox rtb, String format, params object[] args) { if (rtb == null) { return; } if (rtb.InvokeRequired) { RtbWriteCB handle = new RtbWriteCB(RtbWrite); rtb.Invoke(handle, rtb, String.Format(format, args)); } else { rtb.AppendText(String.Format(format, args)); } }
public static void RtbWrite(RichTextBox rtb, string str) { if (rtb == null) { return; } if (rtb.InvokeRequired) { RtbWriteCB handle = new RtbWriteCB(RtbWrite); rtb.Invoke(handle, rtb, str); } else { rtb.AppendText(str); } }