vb.net - 如何在 vb.net 中使用 TextRenderer DrawText 换行长字

标签 vb.net winforms graphics word-wrap textrenderer

如何使用 vb.net 中的 TextRenderer DrawText() 在表单上断字绘制长单词?我认为这是一个简单的问题,我尝试了所有 TextFormatFlags 组合,但我找不到任何解决方案。 有人可以帮忙吗? 这是一个示例:

sText = "C:\Users\abiga\OneDrive\Works\AdreNDSzinkron\bin\Debug\AdreService.exe"
TextRenderer.DrawText(e.Graphics, sText, Font, New Rectangle(0, 0, Me.Width, Me.Height),
                      Me.Color,TextFormatFlags.<what is the correct flag?>) 

我需要这个(没有剪辑):

C:\Users\abiga\OneDrive\Works\Adr
eNDSzinkron\bin\Debug\AdreService
.exe

错误的解决方案:

C:\Users\abiga\OneDrive\Works\Adr
C:\Users\abiga\OneDrive\Works\...
C:\Users\ab...bug\AdreService.exe

感谢您的帮助!

最佳答案

首先尝试 TextFormatFlags.WordBreak 或 TextFormatFlags.TextBoxControl 作为您的标志。

文档说:

WordBreak: Breaks the text at the end of a word

TextBoxControl: Specifies the text should be formatted for display on a TextBox control

组合这些标志应该会产生预期的结果。

如果这不起作用,请尝试使用 Graphics.DrawString相反:

e.Graphics.DrawString(sText, Font, Me.Color, New RectangleF(0, 0, Me.Width, Me.Height))

关于vb.net - 如何在 vb.net 中使用 TextRenderer DrawText 换行长字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48187599/

相关文章:

xml - 如何从 XslTransform 迁移到 XslCompiledTransform

.net - 从Global.asax显示警报消息框(在Application_Error事件上)

c# - 如何将 .NET 控件序列化为 CODE?

asp.net - MVP MVC 和 MVVM 的区别

android - 有关 Android 3D 的初学者问题

c++ - 在光线追踪中对球体进行荒谬的反射

opengl - 从深度缓冲区获取真实的 z 值

mysql - 指定要在 dv.Table.Rows(x)(VALUE).ToString() 中使用的行

vb.net - 打开表格时出现异常故障

c# - 语音识别编程入门问题