所以我想创建一个WinForm应用程序,它将开始从左上角一直打到右下角的文本,就像一个控制台应用程序,当它到达一行的结尾时,它继续在一个新的行中。 / p>
例如:
>line 1: I need y
>
>line 2: our help
如果你理解我的意思,那么文字应该被砍掉。
答案 0 :(得分:0)
您应该使用RichTextBox
来实现此目的。它表示一个富文本控件,支持格式化文本,超链接,内嵌图像和其他丰富内容。
RichTextBox.TextWrapping
RichTextBox
的属性可以帮助您。
RichTextBox
的可用宽度,则获取或设置文本换行的方式。RichTextBox
属性时,应考虑TextWrapping
的宽度。TextWrapping
属性设置为NoWrap
,则可以使用光标将超出水平边界的文本滚动到视图中。垂直超出的文本可以使用键盘或滚动条滚动到视图中。TextWrapping
属性设置为Wrap,HorizontalScrollBarVisibility
属性将自动设置为已禁用,并且忽略对HorizontalScrollBarVisibility
的任何属性更改。答案 1 :(得分:0)
您可以使用MultiLine Textbox ..您必须注意
[1]如果你使用修复宽度字体会更容易..这个想法(不是真正的代码)
charlimit = me.width / textwidth("A") ----> use graph textrender function here
[2]您可以控制 textbox_textchanged 事件,以确保单词不会被'自动装配'到下一行..所以当文本位置位于最正确的位置时您可以通过使用 vbCrLf ..
添加文本来剪切它if LastLine.Length = charlimit then
alltext += vbCrLf
lastLine = ""
endif
但是当你在中间行进行时这很难,因为你必须重新计算它之后的单词(在它下面)..