ふらっとVisual C#,C♯,C#(初心者用) Part105
■ このスレッドは過去ログ倉庫に格納されています
0139デフォルトの名無しさん
2013/07/11(木) NY:AN:NY.AN改行マークは意図したところについてくれるのですが、テキストボックスを「改行で」スクロールすると
テキストボックスの一番下の空白(テキストボックス扱いじゃない隙間?)に
改行マークの残像のようなものが付き、増えていってしまいます。
なにか防ぐ手はないでしょうか。
public void New_Line_Check(TextBox textBox)
{
//ダブルバッファリング用 「Height+100」は試行錯誤しようとした後です、気にしないでください
Bitmap textBox_g= new Bitmap(textBox.Width, textBox.Height+100);
Graphics g1 = Graphics.FromImage(textBox_g);
//Bitmapに改行マークを描写後、textBoxに写す
using (Graphics g2 = textBox.CreateGraphics())
using (Brush brush = new SolidBrush(Color.DarkGreen))
{
// 改行検索
Regex regex = new Regex(Environment.NewLine);
foreach (Match match in regex.Matches(textBox.Text))
{
// 改行位置取得
Point point = textBox.GetPositionFromCharIndex(match.Index);
point.Offset(-2, 2); // 出力位置微調整(お好みに応じて)
// 改行記号(ここでは"↓")描画
g1.DrawString("↓", this.Font, brush, point);
}
g2.DrawImageUnscaled(textBox_g, 0, -2, textBox.Width , textBox.Height + 100);
g1.Dispose();
}
}
■ このスレッドは過去ログ倉庫に格納されています