请问如何让单行TextBox中的文本自右向左匀速滚动?
请教高手!谢谢!

解决方案 »

  1.   

    可以用css控制啊。vs里面有生成的。
      

  2.   

    private void timer1_Tick(object sender, EventArgs e)
            {
                s = textBox1.Text;
                int length = textBox1.MaxLength - textBox1.Text.Length;
                for (int i = 0; i < length; i++)
                {
                    s += " ";           //把字符串后面的空白填上空格
                }
                string str1 = s.Substring(0, 1);
                string str2 = s.Substring(1);  
                s = str2 + str1;     //每次把字符串头的一个字符加到字符串尾
                textBox1.Text = s;
                
            }
    ----------------------------------------------------------------
    我用手工在winForm写的,呵呵
    注意,一个是timer1.Interval是时间间隔,另一个,是textBox1.MaxLength要设置,默认是32767,太长了,可以根据textBox1能容纳的字符数来设置
    字符滚动的同时修改,比较困难,可以在timer1.Stop()以后修改,再Start
      

  3.   


    for (int i = 0; i < length; i++)
    {
        s += " ";           //把字符串后面的空白填上空格
    }这个循环里的填空格是瞬间完成的。一眨眼它就跑最左面去了
      

  4.   

    一般第一次填空白了,s.Length就等于textBox1.MaxLength了,就在也用加了,除非textBox1.Text修改了
    你的timer1.Interval改下,比如改称1000,因为它的单位是微秒,1000才是一秒