c#程序,textbox如何设置文本居中显示?如何按行读取文本文件内容?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c#程序,textbox如何设置文本居中显示?如何按行读取文本文件内容?相关的知识,希望对你有一定的参考价值。

用计时器timer控件,每触发一次事件就控制textbox按行读取文本文件的内容一次,并且文本新读取的内容在下面显示,前面读取的内容在上面,文本框大小固定了,文本框设置了滚动条,意思就是滚动条始终处于最下端,以便显示最新读取的内容。高手帮忙啊!麻烦写一段代码给我看,最好别只讲方法!谢谢了!
其实我想做的软件是一个模拟软件,这个软件真实的就是适时测量三个参数,我要完全模拟真实测量,要用三个文本框,准备让三个 文本框按时间读取我编好的三个文本文件的数字,这样看着就像真实测量一样。

public partial class Form2 : Form

private FileStream fileStr;
private StreamReader reader;
private StringBuilder sLine=new StringBuilder();
public Form2()

InitializeComponent();


private void timer1_Tick(object sender, EventArgs e)

string str=reader.ReadLine();
if (str != null)

sLine.Append(str);
this.textBox1.Text=sLine.ToString();
sLine.Append("\r\n");
this.textBox1.Focus();
this.textBox1.Select((this.textBox1.Text.Length - str.Length), str.Length);
this.textBox1.ScrollToCaret();

else

MessageBox.Show("读取完毕");
reader.Close();
fileStr.Close();
timer1.Enabled = false;



private void Form2_Load(object sender, EventArgs e)

fileStr = new FileStream(Application.StartupPath + "/1.txt", FileMode.Open);
reader = new StreamReader(fileStr,System.Text.Encoding.Default);


设置文本框TextAlign为center,Multiline为True,Time1的Enabled为True,设置一个间隔时间假如为1000即1秒,程序中的1.txt换成你要读取的文件即可追问

兄弟,解决了,谢谢你,采纳你的意见,你的QQ号码是多少?以后向你学习

追答

学习不敢当呢,我也是学得不精,不过可以共同学习,你QQ多少我可以加你

参考技术A 我这里倒是给你实现了一个你所说的要求,只不过是我不是去读取文本文件,而是直接往里面追加东西的方式,读取文本文件的方式跟我这个是一样的。。
你可以看下代码。有啥子问题,再说。。
num++;
this.textBox1.Text += "改变的次数:" + num + Environment.NewLine;
this.textBox1.SelectionStart = this.textBox1.Text.Length;
this.textBox1.Focus();//可以添加,也可以不添加。看你自己是怎么处理的了
this.textBox1.ScrollToCaret();
上面这代码是在timer的中断触发里面实现的。
参考技术B textBoxXxx.ScrollToEnd();

可以在TextChange消息中处理。
参考技术C 这个简单 没分啊 我做出来 不给我追分我砍死你

textbox中的文字如何垂直居中

0 0求助

所以说我最恨不懂装懂的人,VerticalAlignment是VB和ASP用的,TextAlignment="Center"是水平居中,C#语言对Winform开放的是ContentAlignment属性精细到横向竖向位置。textBox是Winform控件,没有ContentAlignment属性的,你真的要需要重写控件,但是这样不值。
方法一:使用label代替textBox,要输入就使用按键或者用keypress来实现,他有ContentAlignment属性,这是最简单的办法
方法二:自定义textBox控件
参考技术A 这是水平居中,呵呵TextAlignment="Center"好像没有垂直居中的属性 参考技术B 你可以设置空间的pandding 或者设置textbox的verticalAlignment 参考技术C 这是水平居中,呵呵TextAlignment="Center" 参考技术D HorizontalAlignment = "Center"VerticalAlignment = "Center"

以上是关于c#程序,textbox如何设置文本居中显示?如何按行读取文本文件内容?的主要内容,如果未能解决你的问题,请参考以下文章

wpf如何设置 textbox文本垂直居中对齐

C# winform 设计 如何相对居中

c# winformz中 textbox 控件 文字如何垂直居中?

c# 中怎么调整textbox的文本格式,垂直居中

在C#中怎么样在一个文本框调用另一个窗口的文本框

C# ComboBox控件上的文本能不能居中显示?