随笔分类 - QT
摘要:1.首先创建配置文件(JSON 格式): // states_config.json{ "states": [ { "name": "InitState", "qmlPath": "qrc:/qml/InitPage.qml", "transitions": [ { "event": "init_c
阅读全文
摘要:#include <QGuiApplication>#include <QQmlApplicationEngine>#include <QNetworkAccessManager>#include <QNetworkReply>#include <QUrl>#include <QImage>#inc
阅读全文
摘要:如果要在QML中调用C++类中的Q_INVOKABLE类型的函数,可以直接在QML中使用该函数,无需使用Connections元素。下面是一个简单的示例,演示如何在QML中调用C++类中的Q_INVOKABLE函数:假设有一个C++类MyClass,其中包含一个Q_INVOKABLE函数cppFun
阅读全文
摘要:1. 创建一个继承自QObject的类,该类将作为单例数据层接口。2. 在类中定义需要存储的数据,并提供set和get方法来操作数据。3. 使用静态函数来获取单例实例,并确保只有一个实例存在。 // datainterface.h#ifndef DATAINTERFACE_H#define DATA
阅读全文
摘要:1. 创建一个继承自QObject的类,并在类的实现文件中使用Q_PLUGIN_METADATA宏定义插件的元数据信息。这个宏通常包含插件的元数据,如插件的标识符、版本号等。2. 在插件项目的.pro文件中添加QT += core gui widgets以确保能够使用Qt的相关功能。3. 在主应用程
阅读全文
摘要:{ QString ProjectPath = ""; QString ConfigPath = ".json"; const char* PathEnvVar = getenv(""); if (PathEnvVar != nullptr) { ProjectPath = PathEnvVar;
阅读全文
摘要:要输出彩色信息有点类似于html的语法,即在要输出的文字前加上一段颜色指令。 指令格式如下\033[*m 这里的*就是转义字符,例如我们要输出一段绿色的文字,则 qDebug() << "\033[32m" <<"Hello!"; 即在输出文字前,先输出一个颜色指令。 注意这个指令对后续的输出都会生
阅读全文
摘要:QString qmlProjectPath = ""; QString surfaceConfigPath = "warningText.json"; // Get QML Project Path Env Variable const char* qmlProjectPathEnvVar = g
阅读全文
摘要:什么是googletest? googletest简介 GoogleTest 是 Google 的 C++ 测试和模拟框架,可以帮助程序员测试C++程序的结果预期,GoogleTest 的代码用cmake管理,可以使用cmake进行编译程dll在程序中使用。 googletest一般也可以简称为g
阅读全文
摘要:#include "mainwindow.h" #include <QApplication> #include <QSplitter> #include <QTextEdit> int main(int argc, char *argv[]) { QApplication a(argc, argv
阅读全文
摘要:SpringAnimation用来显示出类似于弹簧的震动效果。 先说几个属性: spring : 用来控制动画的加速度,取值0-5.0damping: 代表衰减系数,其值越大震荡就越快恢复,取值0-1.0epsilon: 设置一个阈值。如果是基于动像的素画,建议为0.25;如果是scale动画,建议
阅读全文
摘要:一、简介 Qt内存管理机制:Qt 在内部能够维护对象的层次结构。对于可视元素,这种层次结构就是子组件与父组件的关系;对于非可视元素,则是一个对象与另一个对象的从属关系。在 Qt 中,在 Qt 中,删除父对象会将其子对象一起删除。 C++中delete 和 new 必须配对使用(一 一对应):dele
阅读全文
摘要:一、QThread类的run一、实现方法: 新建一个集成QThread的类,重写虚函数run,通过run启动线程 二、示例: class WorkerThread : public QThread { Q_OBJECT void run() override { QString result; /*
阅读全文
摘要://去掉右下角 三角图标ui->statusBar->setSizeGripEnabled(false); // 新增标签栏 QLabel *label_url = new QLabel(this); QLabel *label_about = new QLabel(this); // 配置连接 l
阅读全文
摘要:WarnLabel* label = new WarnLabel(ui->tableWidget);//状态,设置大小居中 label->setMinimumSize(23,23); label->setMaximumSize(23,23); label->setObjectName("state"
阅读全文
摘要:ui->tableWidget->horizontalHeader()->setSectionResizeMode(QHeaderView::Interactive);//表格列宽可拖动 ui->tableWidget->verticalHeader()->setSectionResizeMode(
阅读全文
摘要:setCommonTable(QTableWidget *tw) { tw->setSelectionBehavior(QAbstractItemView::SelectRows); tw->setEditTriggers(QAbstractItemView::NoEditTriggers); tw
阅读全文
摘要:setTableAligCenter(QTableWidget *tw) { int rowCount = tw->rowCount(); int columCount = tw->columnCount(); for(int row=0;row<rowCount;row++) { for(int
阅读全文
摘要:getFtpImg(QString ftpFilePath, QString curFileName, QLabel* lb) { QNetworkAccessManager* myNetworkManager = new QNetworkAccessManager(this); QNetworkR
阅读全文
摘要://将图例设置成横排显示 ui->customplot->legend->addElement(0,1,ui->customplot->legend->item(1)); ui->customplot->legend->addElement(0,2,ui->customplot->legend->i
阅读全文