1

QTableWidgetItemの行にある垂直ヘッダー アイテムの背景色と前景色を設定しようとしていQTableWidgetます。次のコードは、通常のセルである に対しては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は、 が垂直ヘッダー項目の場合は変更しませんが、通常のセルの場合は望ましい効果があります。垂直ヘッダー アイテムの背景と前景を設定するにはどうすればよいですか?

4

2 に答える 2

0

QTableWidget行ラベルの色を変更することは可能ですか? 同じトピックについてですが、PyQt の場合、私の解決策はQTableWidgetItem垂直ヘッダーを取得し、そこに背景と前景を設定することでしたが、前景のみが変更され、背景は滑らかな灰色のグラデーションのままでした。おそらく、スタイルは背景を上書き/無視していました。別のスタイル (Cleanlooks など) を指定すると修正されました。

したがって、テーブルウィジェットの構築に次のようなものを追加します

QTableWidget::verticalHeader().setStyle(QStyleFactory::create("CleanLooks"))
于 2014-07-16T08:31:50.550 に答える
0

「AccessibleName」であることを知ることで、特定のアイテムを簡単にターゲットにできると思います。これを試すことができます:

QTableWidgetItem#YourAccessibleName {

/* style definitions */

}
于 2013-05-31T16:11:50.757 に答える