VB的TextBox控件的MutliLine属性在运行时是只读的.因设计需要,我在设计时所有TextBox的MutliLine=False,如果在运行设置MutliLine=True则会出错.请问到有什么方法可以在运行时设置TextBox显示多行文本(是"运行时"噢)?据说可以用API设置,代码怎么写?第一个给出正确代码给300分.急!!

解决方案 »

  1.   

    不知道,你要着急的话放两个文本框,一个MutliLine,一个非MutliLine,用哪个显示哪个
      

  2.   

    //据说可以用API设置,代码怎么写实现不了用两个textbox模拟吧
      

  3.   

    楼上,我就是不想用两个控件,那样代码要写双倍.也不是知道用哪些API设置,要是我能查出来就不用问你们了.请高手帮帮忙啊!
      

  4.   

    这样写,用不着写两倍代码Option ExplicitPrivate WithEvents txt As TextBoxPrivate Sub txt_Change()
        Debug.Print txt.Text
    End SubPrivate Sub cmdShowMulti_Click()
        txtMulti.Visible = True
        txtSingle.Visible = False
        Set txt = txtMulti
        txt.Text = "Multi"
    End SubPrivate Sub cmdShowSingle_Click()
        txtSingle.Visible = True
        txtMulti.Visible = False
        Set txt = txtSingle
        txt.Text = "Single"
    End Sub
      

  5.   

    我以前也是这样,用下面的吧!
    Private Sub Form_Load()
    text1.MultiLine = True
    text1.ScrollBars = 2 - vertical
    End Sub
    这样写,用不着写十倍代码(我试过了,可以,不知你可不可以呢?试试看吧!别忘了给我300分!)
      

  6.   

    没有必要用API
    好像是安装了office2000以后会有一个microsoft forms 2.0 控件,这里面的textbox的multline属性不是只读属性
      

  7.   

    各位仁兄,你们还是不明白我的意思.我之所以不想用两个控件,是因为我用了控件数组,而且用的是我用TextBox改造过的控件,如果用楼上所说的方法,我写代码量太大了.所以我想用API在我的控件内部设置Textbox可以显示多行文本(我现在已经用了一种方法,但太麻烦了.就是用一个变更加上回车符赋值给TextBox.Text),这样我编程就方便多了.VB这点限制太麻烦了,VC怎么没有这个问题.还请大家帮忙想想办法!!!小弟不胜感激!!!
      

  8.   

    各位仁兄,你们还是不明白我的意思.我之所以不想用两个控件,是因为我用了控件数组,而且用的是我用TextBox改造过的控件,如果用楼上所说的方法,我写代码量太大了.所以我想用API在我的控件内部设置Textbox可以显示多行文本(我现在已经用了一种方法,但太麻烦了.就是用一个变量加上回车符赋值给TextBox.Text),这样我编程就方便多了.VB这点限制太麻烦了,VC怎么没有这个问题.还请大家帮忙想想办法!!!小弟不胜感激!!!