随笔分类 -  QT

摘要:1、拖拽完后保存 2、重新编译ui文件 3、点击对应方案选择“重新扫描解决方案” 阅读全文
posted @ 2020-11-06 19:34 补码 阅读(731) 评论(0) 推荐(0)
摘要:1、在安装目录找到MaintenanceTool.exe 2、选择“Setting”,“Temporary repositories” add一个地址“https://download.qt.io/online/qtsdkrepository/windows_x86/root/qt/”,从而添加一个 阅读全文
posted @ 2020-11-05 20:24 补码 阅读(2496) 评论(0) 推荐(0)
摘要:1、void QWidget::setAttribute(Qt::WidgetAttribute attribute, bool on = true) 用于设定窗口的一些属性 枚举 含义 Qt::WA_AcceptDrops 允许窗体接收拖放来的组件 Qt::WA_DeleteOnClose 窗体关 阅读全文
posted @ 2020-10-19 01:34 补码 阅读(852) 评论(0) 推荐(0)
摘要:QRect::adjusted()和QRect::adjus()都是对当前矩形2个点的坐标进行相加, 不同的是 1)QRect::adjus()改变当前矩形且没有返回值 2)QRect::adjusted()不改变当前矩形,返回一个矩形 例如: QRect rect1(10, 10, 10, 10) 阅读全文
posted @ 2020-10-14 00:17 补码 阅读(2624) 评论(1) 推荐(0)
摘要:1、每个QWidget继承的类都有customContextMenuRequested(), 这个信号可以在鼠标右击时候发射,为此信号编写槽函数可以创建和运行右键快捷菜单 [signal] void QWidget::customContextMenuRequested(const QPoint & 阅读全文
posted @ 2020-10-01 20:55 补码 阅读(768) 评论(0) 推荐(0)
摘要:在某个大佬编程的代码中看到Q_NULLPTR,查文档查不到它的用处,终于在外国论坛看到讲解,我觉得最合适的解释如下: 简单的说,编译器支持C++11,会变为nullptr,不支持变为NULL。所以直接用nullptr就好了。 阅读全文
posted @ 2020-09-24 21:05 补码 阅读(2124) 评论(0) 推荐(1)
摘要:Qt 中的智能指针 上一篇博客中介绍了 C++11 标准中的提供的智能指针。在 Qt 中也提供了类似的替代功能,并且比 C++11 标准中提供的功能还要强大,所以如果我们使用 Qt 作为基础库,那么就没有必要使用C++11 的智能指针。 Qt 的智能指针包括: QSharedPointer QSco 阅读全文
posted @ 2020-09-24 16:13 补码 阅读(1654) 评论(0) 推荐(0)
摘要:1、旧(Qt文档内说明不推荐使用) qsrand(QTime::currentTime().msec()); // 随机数初始化 qrand()%10; 2、新 // 使用方法例子 #include<QRandomGenerator> qint16 rand= QRandomGenerator::g 阅读全文
posted @ 2020-09-22 00:46 补码 阅读(2694) 评论(0) 推荐(0)
摘要:类型名称 注释 备注 qint8 signed char 有符号8位数据类型 qint16 signed short 有符号16位数据类型 qint32 signed int 有符号32位数据类型 qint64 long long int 或(__int64) 有符号64位数据类型 qintptr 阅读全文
posted @ 2020-09-21 23:30 补码 阅读(3749) 评论(0) 推荐(1)
摘要:(该例子参考《Qt Creator快速入门 第三版》src\17\17-10) 1、pro中添加如下代码 QT += xml 2、UI界面设计如下图所示 3、代码部分 #ifndef MAINWINDOW_H #define MAINWINDOW_H #if _MSC_VER >=1600 // M 阅读全文
posted @ 2020-05-01 15:52 补码 阅读(239) 评论(0) 推荐(0)
摘要:这是编译器问题导致,正常Qt本身MinGW不会出现该问题,MSVC则会出现,解决方法如下: 1、进入文本编辑器设置 2、使用 QString::fromLocal8Bit 来将本地字符编码转换为 Unicode 形式的 QString 3、另外一种方法,在用到中文字符的头文件和源文件添加以下句子 # 阅读全文
posted @ 2020-03-30 16:14 补码 阅读(1135) 评论(0) 推荐(0)
摘要:1、先上图 2、头文件 1 #ifndef MAINWINDOW_H 2 #define MAINWINDOW_H 3 4 #include <QMainWindow> 5 #include<QDir> 6 #include<QFileDialog> 7 #include<QFileInfoList 阅读全文
posted @ 2020-03-26 18:58 补码 阅读(2241) 评论(9) 推荐(0)
摘要:文件是否有变化,以及重复,可以根据文件的Hash值来判断。 1、头文件 #include<QCryptographicHash> 2、代码 QFile file("../text.txt"); if(file.open(QIODevice::ReadOnly)) { QCryptographicHa 阅读全文
posted @ 2020-03-07 00:00 补码 阅读(2515) 评论(0) 推荐(0)
摘要:1、bool QString::startsWith // 字符串以XX开头,返回true,第二个参数可以设置大小写敏感 QString str = "Bananas"; str.startsWith("Ban"); // returns true str.startsWith("Car"); // 阅读全文
posted @ 2020-03-06 00:30 补码 阅读(11129) 评论(0) 推荐(1)
摘要:1、原理 2、代码 1 void MyWidget::mouseMoveEvent(QMouseEvent *event) 2 { 3 QPoint P3 = event->globalPos(); 4 QPoint P2 = P3 - L; 5 this->move(P2); 6 } 7 8 vo 阅读全文
posted @ 2020-03-05 22:00 补码 阅读(1631) 评论(0) 推荐(0)
摘要:1、头文件 #include<QHostAddress> #include<QNetworkInterface> 2、代码 1 QList<QHostAddress> list = QNetworkInterface::allAddresses(); 2 foreach(QHostAddress a 阅读全文
posted @ 2020-02-29 19:37 补码 阅读(431) 评论(0) 推荐(0)
摘要:在做通讯练习的时候,发现发送给小助手字符乱码,图片如下 本人Qt Creator是UTF-8,需要改成gbk,代码如下 #include<QTextCodec> // 提供字符编码转换 1 QTextCodec* gbk = QTextCodec::codecForName("gbk"); 2 QS 阅读全文
posted @ 2020-02-28 17:03 补码 阅读(631) 评论(0) 推荐(0)
摘要:1、头文件 #include<QFile> #include<QFileDialog> #include<QDataStream> 2、写代码前工作 在ui界面拖入2个button按钮和1个textEdit,如下图所示,并分别添加button的槽函数 3、读文件 1 void MyWidget::o 阅读全文
posted @ 2020-02-27 18:07 补码 阅读(406) 评论(0) 推荐(0)
摘要:经常用c++,qDebug()用的不习惯,将其改为cout,并且为了方便调试,还添加了文件名及行号。 代码如下: // __FILE__文件名,__LINE__行号,如果想看时间还可以添加__TIME__ #define cout qDebug() <<"["<<__FILE__<<":"<<__L 阅读全文
posted @ 2020-02-27 17:13 补码 阅读(613) 评论(0) 推荐(0)
摘要:1、QString转换为QByteArray QString str = "123456"; QByteArray byte = str.toUtf8(); // 转换为Utf8格式 byte.toLocal8Bit(); // 转换为本机编码格式 2、QByteArray转换为char * QBy 阅读全文
posted @ 2020-02-27 16:31 补码 阅读(1624) 评论(0) 推荐(0)