[英]How to add text with specific color to a vertical header item in a qtablewidget?
[英]How to set background and foreground color of QTableWidget row Vertical Header Item
我試圖在QTableWidgetItem
的一行中設置QTableWidget
的背景和前景色,該顏色是Vertical Header Item。 以下代碼不適用於作為垂直標頭項的QTableWidgetItem
,即使相同的代碼對於作為常規單元格的QTableWidgetItem
也可以正常工作。
我在Fedora 17 x64 Gnome 3.4上使用Qt 4.8
static const QBrush AddedCellBackground = Qt::yellow;
static const QBrush AddedCellForeground = Qt::red;
void rowSelected()
{
QTableWidgetItem *vertHeadItem = _getSelectedItemVerticalHeader();
vertHeadItem->setForeground( AddedCellForeground );
vertHeadItem->setBackground( AddedCellBackground );
}
當vertHeadItem
是垂直標題項目時,此代碼不會發生任何變化,但當它是常規單元格時,它將具有所需的效果。 如何設置垂直標題項目的背景和前景?
我認為您可以通過知道它的“ AccessibleName”來輕松定位特定項目,可以嘗試以下操作:
QTableWidgetItem#YourAccessibleName {
/* style definitions */
}
問題中是否可以更改QTableWidget行標簽的顏色? 關於同一主題,但對於PyQt,我的解決方案是獲取垂直標頭的QTableWidgetItem
並在此處設置背景和前景,但是僅更改前景,背景保持平滑的灰色漸變。 樣式可能覆蓋/忽略了背景。 指定其他樣式(例如,Cleanlooks)將其修復。
因此,在表格小部件的構造中添加類似內容
QTableWidget::verticalHeader().setStyle(QStyleFactory::create("CleanLooks"))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.