我在可调整大小的小部件中有一个QLabel元素。文本可能会溢出边界,因此,为了使应用程序看起来更美观,我需要某种方式使文本在文本中最后一个完全可见的单词之后生成省略号(...)。

使用HTML / CSS进行布局,我曾经为此使用过text-overflow: ellipsis;,但是对于QT类,我没有找到任何有关此的信息。

有帮助吗?

解决方案

看起来像在您的标签上调整大小事件您可以使用小部件的新宽度创建隐藏文本并重置文本。使用 QFontMetrics :: elidedText 方法来获取被淘汰的字符串的版本。 通用标签

希望这会有所帮助,

其他提示

我已经修改了上述解决方案并创建了一个函数: 通用标签

希望它会有用。

Qt-5包括一个示例标签类别,这可能是实现自己的有用参考。

从示例:

elidedlabel.h: 通用标签

elidedlabel.cpp: 通用标签

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top