User interface 如何动态调整编辑框中文本的大小

User interface 如何动态调整编辑框中文本的大小,user-interface,autohotkey,editbox,User Interface,Autohotkey,Editbox,在Autohotkey中,我有一个特定大小的编辑。我想调整文本大小,使其显示在编辑的可见区域,而不是将其包装并向下滚动 最初我打算使用StrLen(“String”)函数,但这不会有帮助,因为文本换行时不同的字符会产生影响 String := "This string of text exceeds the visible... area" font_size = 18 Gui, +AlwaysOnTop Gui, Font, S%font_size% Gui, Add, Edit, gText

在Autohotkey中,我有一个特定大小的编辑。我想调整文本大小,使其显示在编辑的可见区域,而不是将其包装并向下滚动

最初我打算使用StrLen(“String”)函数,但这不会有帮助,因为文本换行时不同的字符会产生影响

String := "This string of text exceeds the visible... area"
font_size = 18
Gui, +AlwaysOnTop
Gui, Font, S%font_size%
Gui, Add, Edit, gText_Size vFr_Text X10 -Border center r2 W270, % String
Gui, Show
return

Text_Size:
;Find out if the text exceeds visible area
;if so Change font size
return

您可以使用
+Limit
选项将文本限制在可见空间。您可以将其添加到代码中,如下所示:

Gui, Add, Edit, gText_Size vFr_Text X10 -Border center r2 W270 +Limit, % String

您可以使用
+Limit
选项将文本限制在可见空间。您可以将其添加到代码中,如下所示:

Gui, Add, Edit, gText_Size vFr_Text X10 -Border center r2 W270 +Limit, % String

我认为OP是在问如何动态减小字体大小以适应编辑控件中的空间,而不是将其限制为适合的字符数。谢谢,但有些框需要大量文本,因此限制将无济于事。我认为OP是在问如何动态减小字体大小以适应编辑控件中的空间,不要将其限制为适合的字符数。谢谢,但某些框需要大量文本,因此限制将无济于事。