要在QSqlTableModel类中重写data()函数,并在其中定义Qt.UserRole,可以按照以下步骤进行操作:

  1. 创建一个自定义的类,继承自QSqlTableModel类。
class CustomTableModel(QSqlTableModel):
    def __init__(self, parent=None):
        super().__init__(parent)
  1. 重写data()函数,并在其中定义Qt.UserRole
    def data(self, index, role=Qt.DisplayRole):
        if role == Qt.UserRole:
            # 定义Qt.UserRole
            return "Custom Data"
        
        return super().data(index, role)
  1. 实例化自定义的CustomTableModel类,并将其应用于QTableView控件。
model = CustomTableModel()
tableView.setModel(model)

在上述代码中,当QTableView控件调用data()函数以获取数据时,如果role参数为Qt.UserRole,则返回自定义的数据"Custom Data"。对于其他角色,调用super().data(index, role)以获取默认的数据

Qt 重写QSqlTableModel类在data中定义QtUserRole

原文地址: http://www.cveoy.top/t/topic/hWJW 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录