Qt QLabel文本对齐与富文本和<;tt>;

Qt QLabel文本对齐与富文本和<;tt>;,qt,layout,Qt,Layout,我有一个QLabel,它显示富文本(即Qt支持的HTML的子集),并使用标记(用于单间距字体)。这似乎打乱了整个标签文本的垂直对齐(而不仅仅是单间距部分) 例如,在网格布局中有9个QLabel。中心标签的文本为“textlab”,而其他标签的文本为“textlab”。中心标签的文本对齐比其他标签低3个像素 不用说,当文本更改为不包含任何单间距字体的值时,这会弄乱布局并导致令人讨厌的布局更改 如何使文本与其他标签对齐 使用Gnome 3.18.2的Ubuntu 16.04上的Qt5.5.1;DR

我有一个QLabel,它显示富文本(即Qt支持的HTML的子集),并使用
标记(用于单间距字体)。这似乎打乱了整个标签文本的垂直对齐(而不仅仅是单间距部分)

例如,在网格布局中有9个QLabel。中心标签的文本为
“textlab”
,而其他标签的文本为
“textlab”
。中心标签的文本对齐比其他标签低3个像素

不用说,当文本更改为不包含任何单间距字体的值时,这会弄乱布局并导致令人讨厌的布局更改

如何使文本与其他标签对齐


使用Gnome 3.18.2的Ubuntu 16.04上的Qt5.5.1;DR:使用
..
而不是
..
为我解决了这个问题

查看以下屏幕截图,我的印象是这是一个与Courier新字体相关的问题:

  • 蓝色标签(顶部)的字体设置为新。它在文本上方有额外的空间
  • 红色标签(中间)使用问题中的
    。Qt选择Courier New作为字体,并且在文本上方有额外的空间
  • 绿色标签(底部)如上所述使用
    字体系列:monospace
    (用于文本的“标签”部分);Qt选择不同的单间距字体(不确定是哪一种),间距很好