C++ 如何设置Qt工具提示宽度

C++ 如何设置Qt工具提示宽度,c++,html,css,qt,tooltip,C++,Html,Css,Qt,Tooltip,需要在工具提示中用粗体和多色字符显示两行文字,但工具提示似乎有最大宽度,文字被剪切。我试图计算文本的宽度并手动设置宽度,但并没有任何效果,似乎style=“width:some px”不适用于工具提示。代码如下: 已编辑 QString tooltip = "<div style= \"white-space: nowrap; width: 1500px;\">Some text for tooltip, which is too long</di

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

已编辑

QString tooltip = "<div style= \"white-space: nowrap; width: 1500px;\">Some text for tooltip, which is too long</div>";
QString tooltip=“工具提示的某些文本太长”;


如何更改工具提示宽度?

使用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>

alwkefjwekf
eaeaeaeaeaeaeaeaeaeaeae
这将帮助您了解如何更好地限制表的大小。我毫不怀疑,可能有更简洁的方式来表达这一点

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));
按钮->设置工具提示(QApplication::translate(“主窗口”),“\n”
“alwkefjwekf\n”
“ea ea ea ea ea ea ea ea ea ea e\n”
“\n”
"    ", 0));

这有点干净…
另外,不要设置“空白:nowrap;”,如果设置的宽度较小,则会切断文本
而且,如果可能的话,不要硬编码类名,因为没有我使用过的类函数

如果您确实想要Qt-Linguist(translate函数)的类名,请确保RTTI编译器选项处于打开状态,并且 使用
typeid(*this).name()

setToolTip(QApplication::translate(\uuuu函数\uuuu),“\n”
“ea ea ea ea ea ea ea ea ea ea ea ea ea”
"    ", 0
));

我不希望在没有表格标签的情况下拥有tr和td。您是否尝试过保留它,即仅在第二排使用br?此外,似乎没有必要使用QString::fromStdString。>似乎没有必要使用QString::fromStdString是的,在发布此问题之前,我在使用std::string变量的地方编辑了实际代码。:)您是对的,我可以不使用tr/td关闭换行,只通过和工具提示的宽度如何?有什么想法吗?我不能用行为复制。请提供用于添加工具提示的代码。哪个小部件有工具提示?似乎它是特定于项目的,无论如何我找到了解决方案,部分解决了问题,我为小部件设置了样式表,它应该显示工具提示:setStyleSheet(“QToolTip{min width:+QString::number(width)+”px;width:+QString::number(width)+“px;”;但现在的宽度是非常长(大约50px),我尝试设置最大宽度,但它没有效果。谢谢
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
                                 ));