转至https://www.cnblogs.com/zhoug2020/p/3789076.html
以下可以去除QTableWidget QTableView 选中虚框问题
class NoFocusDelegate : public QStyledItemDelegate {
protected: void paint(QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index) const;
};
void NoFocusDelegate::paint(QPainter* painter, const QStyleOptionViewItem & option, const QModelIndex &index) const
{
QStyleOptionViewItem itemOption(option);
if (itemOption.state & QStyle::State_HasFocus)
itemOption.state = itemOption.state ^ QStyle::State_HasFocus;
QStyledItemDelegate::paint(painter, itemOption, index);
}
// set the item delegate to your table widget
ui->tableView->setItemDelegate(new NoFocusDelegate());