我目前有一个QGraphicsScene,我正在使用QGraphicsGridLayout。我试图在此网格布局上对齐QWidgets(QLabels和自定义图形QWidget),然后将其导出到QPrinter以进行pdf导出。
我遇到的问题是我在QLabel之间有这些灰色的分隔线,我似乎无法摆脱它。我已经尝试将布局中的设置间距设置为0,边距设置为0,QLabel调色板的所有不同属性等都无济于事。这是相关的代码:
主要课程:
QLabel lbl("some text");
lbl.setAutoFillBackground(true);
QPalette pal = lbl.palette();
pal.setColor(QPalette::Window, Qt::white);
lbl.setPalette(pal);
lbl.setFrameStyle(QFrame::NoFrame);
reportlayout->addWidget(&lbl);
reportlayout->generatePDF(reportfilename);
reportlayout class:
gridlayout->setContentsMargins(0,0,0,0);
gridlayout->setSpacing(0);
QGraphicsWidget* page = new QGraphicsWidget();
page->setLayout(gridlayout);
scene->addItem(page);
printer->setOutputFileName(filename);
painter->begin(printer);
scene->render(painter);
painter->end();
我感觉这是布局这样做,因为线条位于网格中的单元格之间 - 但布局没有任何颜色属性,我找不到任何与分隔线相关的东西。
非常感谢!
答案 0 :(得分:0)
你试过样式表吗?
例如,
setStylesheet("QLabel { border:0px solid black; }");
您必须调查所有可能的选择器,直到找到哪一个引入边界。