将 QWidget 添加到 QGridLayout 会为布局添加边框?

Adding QWidget into QGridLayout adds border to layout?

目前,我在 QTDesigner(我将其与 VS 2022 一起使用)中以这种方式组织我的程序:QMainWindow->centralWidget(QWidget)->QTabWidget->Tab(QWidget)->QGridLayout。 所有这些元素都是在 QtDesigner 中创建的。 在我的 cpp 代码中,我正在下载一些数据并生成 QTableWidget* m_table。 不幸的是,在将它添加到 QGridLayout 元素之后,我在这个布局周围得到了一个黑色边框。如果根本无法为此元素设置边框,那怎么可能,至少在 QtDesigner 中是这样?

QTableWidget* m_table;
///(...)
ui.gridLayout->addWidget(m_table);

查看 Qt's 样式表。您应该能够以任何您想要的方式设计您的 QTableWidget

请记住 QTableWidgetQTableView 的特殊版本,因此您已将样式表设置为 QTableView:

m_table->setStyleSheet("QTableView {background: transparent; border: 1px solid green;}");

这里有一些链接可以帮助您开始使用 Qt 样式表:

https://doc.qt.io/qt-5/stylesheet.html

https://doc.qt.io/qt-5/stylesheet-syntax.html

https://doc.qt.io/qt-5/stylesheet-examples.html