Vb.net (VB 2010)标签';s文本从它扩展而来';这是锁定的尺寸。如何滚动到最后一行?

Vb.net (VB 2010)标签';s文本从它扩展而来';这是锁定的尺寸。如何滚动到最后一行?,vb.net,text,scroll,label,autoscroll,Vb.net,Text,Scroll,Label,Autoscroll,我一直在写一个程序,调用批处理文件(下载一些东西)。我添加了一个标签,向用户报告下载进度。该程序将允许多次下载,因此在某个时候标签将充满文本。当这种情况发生时,文本从标签上延伸,我看不到任何内容。我想要的是让标签滚动到标签中添加的较新文本行。换句话说,我希望标签文本的焦点始终位于最后一行。有人能在标签上贴一个这样做的例子吗?与Steve的评论类似,我建议为此使用多行文本框或RichText控件。您可以将控件的ReadOnly属性设置为True,并将滚动条属性同时设置为True和True 向该控件

我一直在写一个程序,调用批处理文件(下载一些东西)。我添加了一个标签,向用户报告下载进度。该程序将允许多次下载,因此在某个时候标签将充满文本。当这种情况发生时,文本从标签上延伸,我看不到任何内容。我想要的是让标签滚动到标签中添加的较新文本行。换句话说,我希望标签文本的焦点始终位于最后一行。有人能在标签上贴一个这样做的例子吗?

与Steve的评论类似,我建议为此使用多行文本框或RichText控件。您可以将控件的
ReadOnly
属性设置为True,并将
滚动条
属性同时设置为True和True

向该控件添加新文本时,可以使用以下代码确保用户可见:

TextBox2.AppendText('New text')
TextBox2.SelectionStart = TextBox2.Text.Length
TextBox2.ScrollToCaret()

我建议您为此使用列表框。标签没有满足您要求的功能。你能做的最接近的事情就是右对齐文本,这样你就能始终看到结束,而不是开始。Thnx代表你的输入。“右对齐”文本是什么意思?单击标签。在属性窗口中找到属性“文本对齐”,将其从左上角更改为右下角。我已经将文本对齐到右下角。它所做的就是文本从那里开始向上。当文本到达顶部时,它会停止向我显示新行。不确定为什么它对你不起作用,但关键是,不要使用标签。