|
|
浮子屋商店もよろしく。 |
|
テキストボックスに文字列を追記
ログ出力など、行単位でどんどん追記する場合に。
0
1
2
3
4
5
6
| | public void out(string text){
txtBox.SelectionStart=txtBox.Text.Length;
txtBox.SelectionLength=0;
txtBox.SelectedText=text+"\r\n";
txtBox.SelectionStart=txtBox.Text.Length;
txtBox.SelectionLength=0;
}
|
応用編。以下のコードを追加。
- スレッドセーフにした(Invoke)
- 一定のサイズを超えたらクリア
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
| | private delegate void OutPutDelegate(string text);
OutPutDelegate outdel;
public frmMain() {
outdel=new OutPutDelegate(_output);
}
private void _output(string text) {
if (this.InvokeRequired) {
Invoke(outdel, new object[] { text });
return;
}
if (txtMain.Text.Length > 32767) {
txtMain.Text = "";
}
txtMain.SelectionStart = txtMain.Text.Length;
txtMain.SelectionLength = 0;
txtMain.SelectedText = text + "\r\n";
txtMain.SelectionStart = txtMain.Text.Length;
txtMain.SelectionLength = 0;
}
|
|