我有一个禁用 setSelectionMode (QTableWidget::NoSelection) 的 QTableWidget,并且我填写的 QTableWidgetItems 没有 Qt::ItemIsEditable 标志。
然而,一个被点击的单元格会得到某种光标(在我的例子中是底部的黑线):
如何禁用此“光标”?
原文由 Tobias Leupold 发布,翻译遵循 CC BY-SA 4.0 许可协议
我有一个禁用 setSelectionMode (QTableWidget::NoSelection) 的 QTableWidget,并且我填写的 QTableWidgetItems 没有 Qt::ItemIsEditable 标志。
然而,一个被点击的单元格会得到某种光标(在我的例子中是底部的黑线):
如何禁用此“光标”?
原文由 Tobias Leupold 发布,翻译遵循 CC BY-SA 4.0 许可协议
#include <QTableWidget>
tableWidget->setEditTriggers(QAbstractItemView::NoEditTriggers);
tableWidget->setFocusPolicy(Qt::NoFocus);
tableWidget->setSelectionMode(QAbstractItemView::NoSelection);
这些语句将禁用单元格中的表格选择..
原文由 Senthil Kumar 发布,翻译遵循 CC BY-SA 3.0 许可协议
2 回答4.9k 阅读✓ 已解决
2 回答1k 阅读✓ 已解决
3 回答1k 阅读✓ 已解决
4 回答825 阅读✓ 已解决
3 回答1.1k 阅读✓ 已解决
1 回答1.6k 阅读✓ 已解决
1 回答1.1k 阅读✓ 已解决
这有帮助吗?
详细说明一下:项目的外观由视图的调色板控制,您可以使用
TableWidget::palette()
方法检索该调色板。请注意,它返回为const
所以你有一个副本,更改它,然后使用setPalette
应用它。另请注意,这里我只是将单元格颜色设置为白色,将文本颜色设置为黑色,理想情况下,您可以将其专门设置为默认单元格颜色(也可以从调色板中获得)。最后请注意,在我的情况下,该项目仍然保留了与我没有尝试在这里解决的默认边界不同的边界。您可以在此处阅读有关各种颜色定义的更多详细信息(对于 Qt 4.8) http://qt-project.org/doc/qt-4.8/qpalette.html#ColorRole-enum
编辑:更多的筛选似乎你应该通过设置整个小部件的焦点策略来摆脱小部件交互(而不是选择)周围的任何边框,如下所示:
如果这不能解决问题,那么我很快就没有想法了。