我正在开发一个Qt应用程序,它目前正处于内部测试阶段。该公司的一名成员将Windows配置为显示大于其正常大小的文本,这会破坏我的UI。例如,“关于”页面目前如下所示:
但在他的设置下,看起来像这样(注意剪辑的文字):
来自C#/ Winforms背景,我很惊讶我似乎无法找到一些易于配置的标签属性,例如Form.AutoSize,它会自动调整标签大小以适合其包含的文本。我曾尝试弄乱sizePolicy
,scaledContents
和其他一些属性,但似乎没有人这样做。
我遇到了各种线程(例如this one),它们提供了将文本缩放到标签的说明,但我想做相反的事情 - 将标签缩放到 text 以方便那些像我的同事那样放大文字设置的人。有这么简单的方法吗?
答案 0 :(得分:1)
这个问题至少有三个解决方案。
使用布局。它们的内容根据窗口的大小进行缩放。
创建一个在更改窗口大小时执行的代码。在该代码中,您将获得窗口中最长文本的宽度(How?)(another way),然后将窗口设置为宽于此值。
执行与解决方案#2相同的操作,但仅在显示对话框时执行代码。之后,更改窗口属性,使其大小无法更改。