通过控件类传递 QSqlQueryModel

Passing QSqlQueryModel through control class

本文关键字:QSqlQueryModel 控件      更新时间:2023-10-16

我将如何尝试通过控件类或 QMainWindow 从连接和查询数据库的类传递QSqlQueryModel,然后传递回需要信息的小部件?

我以为我可以将参考位置传递给QSqlQueryModel对象,但这不起作用或我做错了什么。

还没有在Qt开发者页面上找到任何显示我正在做的事情的例子。

看起来这些只是编译器错误,与Qt无关。

简而言之,你把你的指针和参考资料弄混了。

错误#1:

cardList = new List(sqlModel->getListModel());

List采用指针时,您正在传递引用。修复getListModel的返回类型或修复上述行。

接下来,您没有指定第二个参数,即父参数QWidget。将MainWindow指定为父项,传递0,或修复构造函数的签名以提供默认值(通常0)。

错误#2:

List::List(QSqlQueryModel *model, QWidget *parent) :  ListUI(parent){
    setListItems(&model);
}

您收到model作为指针,然后尝试获取指针的地址。 即您正在制作双指针。将行更改为

setListItems(model);

希望有帮助。