古月不傲 发表于 2020-8-19 08:04

QT随性笔记

1:QT中new出来的如果是子对象、不需要delete 父对象销毁后会自动释放。
2:使用QStringLiteral()宏 即可解决中文乱码问题。
3:使用mysql数据库的时候 会提示未加载驱动
★原因是QT并没有包含mysql驱动模块 需要编译mysql驱动模块 搞不好会出现        因为控制不当、鹅提取放弃呢^_^~~!
        ①:安装QT相对应版本的源码 默认安装QT时 有Src选项 请打√
        ②:用QT打开xx:\QT\5.12.9\Src\qtbase\src\plugins\sqldrivers\mysql.pro
        ③:修改mysql.pro ->
                #QMAKE_USE += mysql
                #修改你对应的mysql库目录
                INCLUDEPATH += "C:/Program Files/MySQL/MySQL Server 8.0/include"       
                LIBS += -L"C:/Program Files/MySQL/MySQL Server 8.0/lib" -llibmysql#-L 的意思使忽略空格产生的错误
                DESTDIR = ../mysql/lib/
        ④:编译出qsqlmysql.dll、qsqlmysqld.dll 目录 xx:\QT\5.12.9\Src\qtbase\src\plugins\sqldrivers\mysql\lib
        ⑤:将其拷贝到xx:\QT\5.12.9\msvc2017_64\plugins\sqldrivers        #我用的是vs的编译器 如果是GCC要选择相应的目录哦
        ⑥:xx:\MySQL\MySQL Server 8.0\lib\libmysql.dll 拷贝到 xx:\QT\5.12.9\msvc2017_64\bin
                ~别忘了位数要match哦 64-64 32-32 you now ( ̄▽ ̄)"~
4:如果提示xxx已在.obj中定义 清理项目 重新构建即可。
5:由于所有的控件都继承于QWidget或QWidget的派生类,如果要设计自己的控件,可以继承于QWidget或QWidget的派生类。
6:自定义槽函数添加定义的快捷键 ->单击选中槽函数声明 按Alt + Enter
7:自定义槽函数三种方式使用方式
        ①:使用connect
        public slots:
                void xxx();        #名字任意取 任意呵呵...
                connect(信号发送者(地球人), 信号(呼叫奥特曼), 信号接收者(奥特曼), 槽函数(打怪兽));
        void xx对象::槽函数()
        {
                QMessageBox::information(NULL, QStringLiteral("a easy example"), QStringLiteral("哇咔咔 奥特曼正在打小怪兽..."));
        }
        ②:不使用connect        #ui设计师自动生成就是这种方式呢 没错吧^_^
        public slots:
                void xx_自己取得控件名_xx(); # xx要自己去查啦 毕竟是QT定义好的函数名 还有自己取得控件名不要写错了哦
        void xx对象::槽函数()
        {
                QMessageBox::information(NULL, QStringLiteral("a easy example"), QStringLiteral("哇咔咔 奥特曼正在打小怪兽..."));
        }
        ③:c++11 新特性 lamde表达式
                connect(信号发送者, 信号,
                [=]()
                {
                        QMessageBox::information(NULL, QStringLiteral("a easy example"), QStringLiteral("哇咔咔 奥特曼正在打小怪兽..."));
                }
                );

jd688 发表于 2020-8-19 11:26

辛苦了!感谢!
页: [1]
查看完整版本: QT随性笔记