如何设置 QTableView 当前单元格的背景颜色?

发布于 2024-11-02 08:44:20 字数 219 浏览 0 评论 0原文

最近我正在使用 Qt(PyQt) 的 QTableView 编写一个程序。 但我发现当前的单元格/索引(聚焦的单元格/索引,由虚线包围)与其他选定的单元格具有相同的背景颜色。

有什么办法可以让当前的cell脱颖而出呢?我正在使用 Qt Designer 设置样式表,但找不到有用的样式。

这是我的第一个问题,如果我有什么错误,请告诉我。谢谢。 还请原谅我糟糕的英语。

问候,

Recently I'm writing a program using Qt(PyQt)'s QTableView.
But I find that the current cell/index (the focused one, which surrounded by a broken line) has same background colour to other selected cells.

Is there any way to make the current cell stand out? I'm using the Qt Designer to set the stylesheet, but I can't find useful style.

This is my first question here, if I made any mistake, please tell me. Thank you.
Also please excuse my poor English.

Regards,

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

平安喜乐 2024-11-09 08:44:20

您使用 QTableView 有什么具体原因吗? QTableWidget,这是QTableView的简单实现,让您轻松达到想要的效果。

1) 查询 QTableWidget 的当前项目

2)调用 QTablewidgetitem::setBackGround (也许也是前台)

Is there a specific reason why you are using QTableView? QTableWidget, which is the simple implemented QTableView, lets you achieve the desired effect easily.

1) Query QTableWidget for it's current item.

2) call QTablewidgetitem::setBackGround on it(maybe also foreground)

或十年 2024-11-09 08:44:20

要更改 QTableView 中任何单元格的背景颜色,您需要从模型类的 data() 方法返回颜色(例如 QVariant(QColor(red))),但仅限于角色参数设置为 Qt 的调用::背景颜色角色。

还有另一个角色 Qt::BackgroundRole 也对我有用(在 Qt4 中)。

For to change the background color of any cell within a QTableView you need to return the color (e.g. as QVariant(QColor(red))) from your data() method of your model class, but only for calls with role parameter set to Qt::BackgroundColorRole.

There is another role Qt::BackgroundRole which is working for me too (in Qt4).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文