我想创建一个简单的“关于”对话框,但注意到 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/