首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何设置QTableWidget行垂直表头项目的背景色和前景色

如何设置QTableWidget行垂直表头项目的背景色和前景色
EN

Stack Overflow用户
提问于 2013-05-30 00:37:21
回答 2查看 3.6K关注 0票数 1

我正在尝试设置QTableWidget行中的垂直标题项QTableWidgetItem的背景色和前景色。以下代码不适用于垂直标题项的QTableWidgetItem,即使相同的代码适用于常规单元格的QTableWidgetItem也是如此。

我在Fedora 17 x64 Gnome3.4上使用Qt 4.8

代码语言:javascript
复制
static const QBrush AddedCellBackground = Qt::yellow;
static const QBrush AddedCellForeground = Qt::red;

void rowSelected()
{
    QTableWidgetItem *vertHeadItem = _getSelectedItemVerticalHeader();
    vertHeadItem->setForeground( AddedCellForeground );
    vertHeadItem->setBackground( AddedCellBackground );
}

vertHeadItem是垂直标题项时,此代码不做任何更改,但当它是常规单元格时,它具有所需的效果。如何设置垂直表头项目的背景和前景?

EN

回答 2

Stack Overflow用户

发布于 2013-06-01 00:11:51

我认为你可以通过知道它是"AccessibleName“来轻松地定位特定的项目,你可以尝试这样做:

代码语言:javascript
复制
QTableWidgetItem#YourAccessibleName {

/* style definitions */

}
票数 0
EN

Stack Overflow用户

发布于 2014-07-16 16:31:51

在关于相同主题的问题Is it possible to change the colour of a QTableWidget row label?中,但是对于PyQt,我的解决方案是获取垂直标题的QTableWidgetItem,并在那里设置背景和前景,但是只有前景改变了,背景保持了平滑的灰色渐变。可能样式覆盖/忽略了背景。指定不同的样式(例如,Cleanlooks)可以修复它。

因此,在表小部件的构造中添加一些内容

代码语言:javascript
复制
QTableWidget::verticalHeader().setStyle(QStyleFactory::create("CleanLooks"))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16819475

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档