1.数据库连接

在开始进行数据库连接之前,记得首先要先在工程文件中添加sql

QT       += core gui sql

然后在.cpp文件中添加对应数据库的头文件,(我这里添加的是sql)

#include <QSqlDatabase>

QT支持的数据库驱动有很多,我们可以先用qDebug语句打印出来看一下

 qDebug()<<QSqlDatabase::drivers();

在这里插入图片描述
在这里插入图片描述

2.数据库驱动无法加载

在连接数据库时可能会出现提示无法加载的情况。
QMYSQL driver not loaded
在这里插入图片描述
解决办法:拷贝mysql安装目录下的libmysql.dll,libmysql.lib到Qt安装包中的bin目录(我的是在msvc2015_64编译器文件里)。
在这里插入图片描述

3.事件的传递

在这里插入图片描述在Widget.cpp中设置了当MyButton被按下时(clicked事件),打印“Button is pressed”,运行正常。
在这里插入图片描述
但是添加了上图代码之后,当相同事件发生时“Button is pressed”就不再被打印,而"The leftbutton is pressed"被打印。
这是因为事件被接受处理之后,就不会再往下传递了。
这时候如果添加ignore函数,让事件在此处被忽略那么事件就继续传递下去,(注意事件传递给额父组件(父窗口),不是给父类(QPushButton))。

Logo

开源鸿蒙跨平台开发社区汇聚开发者与厂商,共建“一次开发,多端部署”的开源生态,致力于降低跨端开发门槛,推动万物智联创新。

更多推荐