红联Linux门户
Linux帮助

Qt QGroupBox在linux下显示边框

发布时间:2016-09-08 15:33:46来源:linux网站作者:maowendi
1.问题
QGroupBox这个控件在Window和Ubuntu下的表现是不一样的,在window下是有边框的,但是在Ubuntu下就是空白的,什么也看不见。
 
2.解决
本来以为会是一个方法设置的结果,在网上查了一下,有人用QSS的方式显示了一下。在此基础上加了一行代码变的更好看一点。
 
3.代码(这是加载.QSS文件的方式实现的)
style.qss文件内容:
QGroupBox{
border-width:2px;
border-style:solid;
border-radius: 10px;
border-color:gray;
margin-top:0.5ex;
}
QGroupBox::title{
subcontrol-origin:margin;
subcontrol-position:top left;
left:10px;
margin-left:0px;
padding:0 1px;
}
Qt加载QSS文件代码(红色部分):
#include "mainwindow.h"
#include <QApplication>
#include <QFile>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
QString qss;
QFile qssFile(":style.qss");
qssFile.open(QFile::ReadOnly);
if(qssFile.isOpen())
{
qss = QLatin1String(qssFile.readAll());
qApp->setStyleSheet(qss);
qssFile.close();
}
w.show();
return a.exec();
}
 
4.效果图
Qt QGroupBox在linux下显示边框
 
源码地址:http://download.csdn.net/detail/maowendi/9620132(代码中有dateedit下拉显示的方法)
 
本文永久更新地址:http://www.linuxdiyf.com/linux/23994.html