c#中如何让输出框一个字一个字的输出

要的效果是,一个一个输出,一个一个跳出来,每个字延迟500毫秒啊

楼主。。。我猜你的意思大概是想动态输入的同时动态显示吧。。。
你可以用一个事件,例如:
private void t_txt_page_TextChanged(object sender, EventArgs e)
{
t_txt_name.Text = t_txt_page.Text;
}
就是当输入框的值改变时,就给重新赋值输出框。。
如果一定要实现500毫秒的延时。楼主可以加Timer定时器控件来作。。不过输入的是人,如果打字快的话。。500毫秒以后会在输出框一下弹出一串字符。。。
用我的方法,既使是删除字符,也会在输出框动态显示的。。你想想。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-04-21
把字符串拆分成数组,每隔500毫秒追加显示一个字符.追问

具体怎么写?
string a = textBox1.Text;
string b = 'a';

if (a == "什么?")
{
for (int i = 0; i < 5; i++)
{
textBox2.Text = textBox2.Text + b;
Thread.Sleep(500);
}
}

追答

string s = textBox1.Text;
char[] c = s.ToCharArray();
for (int i = 0; i < c.Length; i++)
{
textBox2.Text =textBox2.Text+c[i].ToString();
Thread.Sleep(500);
}

第2个回答  2011-04-21
用一个for语句不就行了追问

我知道啊,可是显示的时候不是在输出框一个一个输出,而是运行一段时间,然后一次性从里面输出,我要的效果是,一个一个输出,一个一个跳出来,每个字延迟500毫秒啊

相似回答