如何设置Qt工具提示宽度

时间:2013-06-20 18:58:04

标签: c++ html css qt tooltip

需要在工具提示中显示带有粗体和多色字符的2行文本,但似乎工具提示具有最大宽度并且文本被剪切。我试图计算文本的宽度并手动设置宽度,但它没有产生任何效果,似乎style =“width:some px”不适用于工具提示。这是代码:

被修改

QString tooltip = "<div style= \"white-space: nowrap; width: 1500px;\">Some text for tooltip, which is too long</div>";

there is no effect on tooltip

如何更改工具提示宽度?

2 个答案:

答案 0 :(得分:3)

使用QtCreator / Designer的属性部分,我使用了:

<html>
<table width="25">
  <tr>
    <td width="25">alwkefjwekf</td>
  </tr>
  <tr>
    <td width="25">a ea ea ea ea ea ea ea ea ea ea ea ea ea ea ea ea e</td>
  </tr>
</table>
</html>

这应该有助于您了解如何更好地限制表格的大小。我毫不怀疑可能有更简洁的方式来表达这一点。

QtCreator生成的具体示例:

pushButton->setToolTip(QApplication::translate("MainWindow", "    <html>\n"
"    <table width=\"25\"><tr><td width=\"25\">alwkefjwekf</td></tr>\n"
"    <tr><td width=\"25\">a ea ea ea ea ea ea ea ea ea ea ea ea ea ea ea ea e</td></tr>\n"
"    </table>\n"
"    </html>", 0));

答案 1 :(得分:1)

这有点清洁......
另外,不要设置“white-space:nowrap;”,这样做的宽度小会切断文字
并且,如果可能的话,不要硬编码类名,因为没有__CLASS__我使用__FUNCTION__

如果你真的想要Qt Linguist的类名(翻译函数),请确保RTTI编译器选项已打开并且 使用typeid(*this).name()

setToolTip( QApplication::translate(__FUNCTION__, "    <html>\n"
                                                  "    <div style=\"width: 300px;\">ea ea ea ea ea ea ea ea ea ea ea ea ea ea ea ea ea ea ea ea ea</div>"
                                                  "    </html>", 0
                                 ));