qt - QMessageBox::about 可以根据标题长度调整大小吗?

标签 qt qt4

我想创建一个简单的“关于”对话框,但注意到 QMessageBox::about 不会根据标题的长度调整其大小(由于字体较大,标题通常会更长...... .至少在我的桌面环境中),仅针对内容。有没有办法确保对话框足够大以显示所有标题?我当然可以向 aboutText 添加空格,但我希望有一个不那么黑客的解决方案。

示例:

QString titleText("Some title which is slightly longer");
QString aboutText("Short about text");
QMessageBox::about(this,titleText,aboutText);

目前上面的代码只给我“Some ...”作为标题字符串。我已经使用 Qt 4.7 在 Ubuntu 上的 Eclipse 中构建了该程序。

最佳答案

使用“QMessageBox”的“setStyleSheet()”函数。这是一个例子。

background-color: QLinearGradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 #787878, stop: 0.5 #404040, stop: 0.6 #303030, stop: 0.8 #252525, stop: 1 #151515);
border: 2px solid #05b8cc;
border-radius: 8px;
color: white;
min-width: 300px;
min-height: 80px;

它还会影响“QMessageBox”的子级,其样式表可以通过迭代来恢复。要访问子项,请使用“findChildren(QWidget)”。

关于qt - QMessageBox::about 可以根据标题长度调整大小吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5582896/

相关文章:

c++ - 拖放到桌面或特定文件夹中,无需临时存储。

c++ - 如何在 C++ 中获取 unicode 字符的十进制值

c++ - 从代码添加时qt按钮无法点击

c++ - ImageMagick 使用 qt ans magick++ 打开和写入图像

Qt无法发送邮件

c++ - 从Qt,Win7下,如何知道显示的是哪种窗口样式?

python - 无法发送另一个线程中对象的已发布事件

c++ - 无法从源代码构建 qt(对于 OpenCV)

c++ - 自定义QGraphicsPolygonItem dragLeaveEvent不执行

c++ - OpenCV + QML(从另一个线程抓取帧)