Qt 杂录

作者: BrokenRainK | 来源:发表于2019-06-04 17:28 被阅读0次

UUID

#include <QUuid>
QString uuid = QUuid::createUuid().toString().replace("{", "").replace("}", "").replace("-", "").toUpper();

MD5

#include <QCryptographicHash>
QString md5 = QCryptographicHash::hash("Biao", QCryptographicHash::Md5).toHex();

随机数

Qt5.10后推荐使用 QRandomGenerator 生成随机数,而不再推荐qrand():

#include <QRandomGenerator>
QRandomGenerator::global()->generate();   //(0, MAX_INT)
QRandomGenerator::global()->bounded(100); //(0, 100)

QString获取中文字符串长度

QString str("ab中文");
int len = str.length();              //len为4
len = str.toLocal8Bit().length();    //len为8, UTF-8编码下QString中一个中文占3个字节

connect使用有重载的信号或槽函数

方法一: 使用static_cast<>()进行强制类型转换

方法一

以QSpinBox为例:
QSpinBox有一个重载信号void valueChanged(int i)和void valueChanged(const QString &text)。

使用connect(mySpinBox, &QSpinBox::valueChanged, mySlider, &QSlider::setValue)会编译报错,
因为编译器不知道该使用哪一个valueChanged信号。

正确使用

connect(mySpinBox, SIGNAL(valueChanged(int)), mySlider, SLOT(setValue(int));
或
connect(mySpinBox, static_cast<void (QSpinBox::*)(int)>(&QSpinBox::valueChanged), mySlider, &QSlider::setValue);

方法二

方法二
使用QOverload<>::of()或者qOverload<>()(需要C++14支持)
例如:connect(mySpinBox,QOverload<int>::of(&QSpinBox::valueChanged), mySlider,&QSlider::setValue);

去除QLineEdit、QTextEdit等右键菜单

setContextMenuPolicy(Qt::NoContextMenu);

TabWidget去除选项卡的关闭按钮

tabWidget->tabBar()->setTabButton(0, QTabBar::RightSide, nullptr);

msvc-version.conf loaded but QMAKE_MSC_VER isn't set解决方案

删除和项目有关的所有.qmake.stash以及构建目录(包含同级、上级、上上级,只要相关的.qmake.stash)

设置程序执行时库的查找路径

pro文件中添加
QMAKE_LFLAGS += -Wl,-rpath,\'\$\$ORIGIN\'/lib/              //库查找目录为可执行程序目录下的lib目录

相关文章

  • Qt 杂录

    UUID MD5 随机数 Qt5.10后推荐使用 QRandomGenerator 生成随机数,而不再推荐qran...

  • 2018-12-13

    杂录

  • 服装局部款式图参考

    杂录

  • 杂录

    夜深了,戴上耳机,只想静静地听音乐,什么都不想什么都不念。记录一下生活,写一下比较杂散的文字,回忆一下自己的想法。...

  • 杂录

    新家具来了,各位同仁,洗洗睡先吧。 ( 新家具当然是新的,但是不是有原先的家具那么管使,木夫不知,真的不知。 ( ...

  • 杂录

    我的生活 我得学习生活 我的工作 我得到了罗贝尔奖 1.我的感受1.我得不到的东西1.我不知道说什么

  • 杂录

    当第一声飞机轰鸣作响时,你想的是什么? 那些年懵懂想过的梦,还有多少留在心里能清楚的品味。 过来新家第一周,每天看...

  • 杂录

    下了决心要做的事 要保持不动声色却满心澎湃 ​​​ 谈恋爱就是 恩爱 吵架 分手 和好 而爱情的真正含义 是谁愿意...

  • 杂录

    美好的期待不仅仅是期待别人 也可以是给别人期待 也可以期待自己 恭喜自己误打误撞又多活了半年 今天基本是在看书学习...

  • 杂录

    形体课 面部雕塑课 结束 很累 很想放弃 明明可以安逸点 偏偏折腾 但想想要是哪天实现了自己的理想状态 那得多幸福...

网友评论

      本文标题:Qt 杂录

      本文链接:https://www.haomeiwen.com/subject/jkerxctx.html