fromLocal8Bit()
qt中fromLocal8Bit()函数可以设置编码。
因为QT默认的编码是unicode,不能显示中文的
而windows默认使用(GBK/GB2312/GB18030)
所以使用fromLocal8Bit()函数,可以实现从本地字符集GB到Unicode的转换,从而处理汉语显示乱码等问题
static inline QString::fromLocal8Bit(const QByteArray &str);该函数返回的是String类型的数
tr()
会在运行时把里面的字符串翻译成当前Qt的运行语言。
为程序设置图标
在.pro文件最下方添加一句话
AppIcon.ico是在工程目录下的一个图标文件
resource资源
https://blog.youkuaiyun.com/zhudaokuan/article/details/126908127
action 类
https://blog.youkuaiyun.com/cz955555/article/details/122178084
快捷键
F4 可以切换函数的定义和声明,我们在.cpp定义一个类方法结束之后,可以按F4回到类的声明处。
全局函数
<QtGlobal>
数学函数
<QtMath>
qDebug
头文件<qDebug>
用来输出调试信息
一些语法
QT的容器
QMultiMap,允许有重复的键。QMultiMap没有[]操作。
QMap<string,int> qmap;
qmap.insert("single_value",1);
qmap.insert("single_value",2);
qdebug()<<qmap.value("single_value"); //输出2,1被覆盖了。
qmap.insertMulti("multi_value",1);
qmap.insertMulti("multi_value",2);
foreach(int& a,qmap.values("multi_value"))
{
qdebug()<<a;
}
QSet
Qset.contains(内容) 返回集合里是否包含某元素。
Qstring
endsWith(“city”);
QMultiMap
uniqueKeys()方法可以返回没有重复的键。
QmultiMap的遍历方法
//QmultiMap<Qstring,int> m_map;
foreach(auto key,m_map.uniqueKeys())
{
foreach(auto value,m_map.values(key))
{
qDebug<<key<<":"<<value;
}
}
Qt模块
基本模块
QT在构建项目的时候会自动加入Qt GUI模块。如果不需要,需要手动去除。
QT -= GUI
要加入某些模块时
QT += QML
附加模块
与平台、硬件相关