0-QT应用开发
qt相关知识点
guangshui516
这个作者很懒,什么都没留下…
展开
-
31.QT中串口操作
记录一下QT下的串口操作 #include <QSerialPort> QSerialPort * serialPort; serialPort = new QSerialPort; serialPort->setPortName("COM3"); serialPort->setBaudRate(QSerialPort::Baud115200); serialPort->setDataBits(QSerialPort::Data8); s原创 2021-01-22 10:33:27 · 218 阅读 · 0 评论 -
30.Qt的内存管理
关于Qt中new对象的管理1 创建对象时,继承父类,由父类销毁时候,自动销售子类如 QWidget * w = new QWidget(this);2 通过设置类的属性,当界面关闭时,自动销毁NudtPlan * plan = new NudtPlan; connect(plan,SIGNAL(nudtPlanDoneSignal()), this, SLOT(actionNudtPlanDoneSlot())); //设置当关闭close时,调用析构函数. plan->原创 2021-01-19 14:37:09 · 150 阅读 · 0 评论 -
29.Qt中随机数生成器
Qt中随机数生成器 QTime time; time = QTime::currentTime(); qsrand(time.msec() + time.second() * 1000); int n = qrand() % 10000; //产生10000以内的随机数原创 2020-08-17 14:33:49 · 426 阅读 · 0 评论 -
23.vs2015创建Qt界面动态库
趟了一个坑,记录一下1 新建动态库由于没有提示,将qt的include路径包含进来.创建界面类创建ui类TestWidget对头文件进行修改编译生成动态库,此时没有任何毛病,问题出在调用ui动态库中调用动态库新建调用工程. 结果出现以下错误,原因是不能将库的相关头文件添加到现有工程目录下,调式了好久,网上的方法都不可靠,后来发现原来是自己偷懒导致的,那么我们直接来看正确做法。在使用一个继承自QObject带有Q_OBJECT宏的导出类时,编译报错:不允许 dllim原创 2020-07-13 17:11:46 · 1714 阅读 · 0 评论 -
28.Qt获取路径问题
1 获取路径问题 //加载可执行文件的路径 QDir file_path = QCoreApplication::applicationDirPath(); file_path.cdUp(); file_path.cd("database"); qDebug() << "file_path:" << file_path; QString file_db = file_path.absolutePath() + "/";2 vs2015 设置可执行文件输出路径原创 2020-07-31 09:19:51 · 144 阅读 · 0 评论 -
27.Qt操作sqlite3数据库
sqlite3操作编程问题1 驱动无法加载QSqlDatabase: QSQLITE driver not loaded解决办法将Qt自带安装目录下的sql文件拷贝到可执行文件目录下。原创 2020-07-28 09:39:28 · 744 阅读 · 0 评论 -
26.QTableWidget用法
1 添加 QCombox//tablewidget中存储combox等// ui.tableWidget->setRowCount(0);//设置行数 ui.tableWidget->setAlternatingRowColors(true); //设置隔行显示颜色 ui.tableWidget->horizontalHeader()->setDefaultAlignment(Qt::AlignHCenter);//表头字体居中 //ui.tableWidget->h原创 2020-07-21 17:56:32 · 353 阅读 · 0 评论 -
25.QWidget用法
QWidget 用法1 窗口关闭时对象销毁经常我们使用窗口,希望它的关闭决定由我们自己掌握。如果创建在构造器中作为全局成员,是一种方法,但是经常我们需要它们在方法中创建。如果使用定义局部变量的方式,窗口一闪而退,不是我们所希望的,只能new 对象,通过属性来设置了。CombatUnitInformation * combatUnit = new CombatUnitInformation; // QWiget 子类 combatUnit->setAttribute(Qt::WA_Dele原创 2020-07-17 14:44:12 · 497 阅读 · 0 评论 -
24.QTreeWidget的用法
树形控件先创建停靠窗口,在停靠窗口中创建树形控件。QDockWidget * dockSituation = new QDockWidget(this); dockSituation->setWindowTitle(QStringLiteral("态势组件")); QTreeWidget * treeWidget = new QTreeWidget; treeWidget->setColumnCount(1); //设置列 treeWidget->setHeaderL原创 2020-07-17 09:31:25 · 262 阅读 · 0 评论 -
12.Qt中字符串相关处理
1 QT字符串 QString 转换为 char * 字符串,必须分成2步因为 s.toStdString(), s.toLatin1()等等,都有一个问题,他的返回值必须保存,并没有存储在常量区。 连着写即为空。切记。2 QT中取出指定字符串的子串。QString s1 = “helloworld”; //取出"elloworld"字符串s1.mid(1, s1.size()-1); //从某个下标开始,截取长度3 将16进制字符串, 转换为整数.c 语言函数 ,原创 2020-07-10 18:29:49 · 521 阅读 · 0 评论 -
22.创建DockWidget
创建dockwidget浮动窗口//创建窗口void DockWidgetDemo::createDockWidget(){ //创建dockwidget QDockWidget * dock = new QDockWidget(this); //设置标题 dock->setWindowTitle(QStringLiteral("任务面板")); //设置停靠区域 dock->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::Right原创 2020-07-07 17:04:55 · 293 阅读 · 1 评论 -
21 Qt中ui设计中的一些小知识点
记录一下小细节,方便随时查看1 改变布局中组件大小通过修改最小大小设置重的宽度和高度原创 2020-07-06 09:32:13 · 430 阅读 · 0 评论 -
20.QT中插件编程
插件编程 插件可以理解为动态库,一种固定接口的动态库.以下摘自网友的理解。代码参考自官方示例。Qt插件本身是动态库,除此之外,它定义了一组专用的接口,从动态库中导出,供 Qt 的插件管理体系 发现和调用。当你选择 Qt 插件项目模板时, Qt Creator 会自动为你插入专用接口相关的模板代码。假如你从一个白板做起,实现一个动态库,要想客户方调用,还是需要导出N多的函数。而 Qt这种,只是它约定了你需要导出什么函数、什么类、怎样查询你导出的接口,它定义了一套规范而已。接口定义ec原创 2020-06-19 10:56:12 · 317 阅读 · 0 评论 -
02.vs2015编译qt动态库
vs2015编译qt动态库1 编译动态库昨天重新使用了一下qt动态库,现对qt动态库现进行重新梳理一下,以便后续查阅。创建qt库工程编辑加法库,因为比较直观编译生成动态库2调用动态库方法一新建qt工程,调用上述动态库。项目配置将dll 拷贝到 可执行文件目录下也可以通过设置环境变量形式,那么就不用拷贝dll动态库了。3 调用动态库方法二针对调式调用更加方便,将库工程和调用者工程放在同级解决方案之下.这样就无须拷贝动态库啦.项目进行配置原创 2020-05-15 11:59:20 · 430 阅读 · 1 评论 -
19.Qt中Thread线程中创建QTcpSocket
Thread线程中创建QTcpSocket本文承接上一篇博文,Qt线程创建,本文记录在线程中创建socket 套接字,连接服务器进行编程./*********************************************************************************************** ThreadRecvData.cpp* 描述:本线程类主要功能实现从服务器接收数据.* 作者:xhome* 时间:2020/5/8****************原创 2020-05-09 15:17:59 · 2580 阅读 · 3 评论 -
18.QThread线程创建
记录一下Qt线程的创建,主要是方便以后复用代码/*********************************************************************************************** ThreadRecvData.h* 描述:本线程类主要功能实现从服务器接收数据.* 作者:xhome* 时间:2020/5/8***********...原创 2020-05-08 14:49:50 · 295 阅读 · 1 评论 -
17. QTreeView 简单用法
QTreeView 简单用法QtreeView 是qt 提供树形显示组件与QStandardItemModel 联合使用,实现数据与视图分离,但是不是严格意义上mvc模式.参考博客https://blog.csdn.net/dpsying/category_9274382.html参考官网demo示例#pragma once#include <QtWidgets/QMainWi...原创 2020-05-07 18:53:28 · 3234 阅读 · 0 评论 -
16.Qt环境中qtmqtt简单示例
#include "mainwindow.h"#include "ui_mainwindow.h"#include <QtCore/QDateTime>#include <QtMqtt/QMqttClient>#include <QtWidgets/QMessageBox>MainWindow::MainWindow(QWidget *parent...原创 2020-03-10 14:48:52 · 1008 阅读 · 0 评论 -
04.通过qss文件设置setStyleSheet
通过qss文件,设置组件的风格,有 两种方式,一种是静态编译,一种是动态编译的 ///1,动态编译,添加qss文件的绝对路径 //QFile file("D:/06qtPro/TestPro/QssTest/QssTest/style.qss"); // 2,静态编译,先将qss文件,加载到QssTest.qrc资源文件中,然后引用即可. QFile file(":/st...原创 2018-08-28 22:47:54 · 1156 阅读 · 0 评论 -
05.Qt设置背景图片
QssTest::QssTest(QWidget *parent) : QMainWindow(parent){ ui.setupUi(this); QString qss; QDir dir("."); ///动态编译,添加qss文件的绝对路径 //QFile file("D:/06qtPro/TestPro/QssTest/QssTest/style.qss"); ...原创 2018-08-28 22:50:01 · 798 阅读 · 0 评论 -
06.Qt菜单栏工具栏学习(一)
今天学习了工具栏,现在来个 小结,主要通过ui设计器,来实现。1,菜单栏,《在这里输入》,直接点击编写菜单栏的名字,回车 即可2,工具栏添加鼠标右键添加工具栏3,在工具栏下面图片,加上文字 对action 工具栏,设置风格,即可加上文字。 4,执行效果...原创 2018-08-29 22:57:19 · 965 阅读 · 0 评论 -
06.QT菜单栏QAction学习(二)
QAction 对象相关含义:QAction的提示信息:原创 2018-09-12 09:42:02 · 542 阅读 · 0 评论 -
07.Qt程序的发布
1.编写代码示例,选择release版本2 .将项目工程下的exe文件,复制到一个指定要打包的目录,这里是 F:\fabu\ReleaseApp目录3 进行打包发布,进入到指定的Qt安装目录运行windeployqt.exe 如果直接c盘运行,出现如下错误,主要原因为当前系统运行安装了多个Qt系统,windeploy.exe运行,可能不是我...原创 2018-11-26 17:54:32 · 186 阅读 · 0 评论 -
08.QT中sqlite3数据库基本操作
Qt版本数据库操作1 创建项目时选择sql模块 2 简易效果图如下 3 代码如下图所示#include "SqliteDemo.h"#include <QtSql/QSqlDatabase>#include <QtSql/QSqlRecord>#include <QtSql/QSqlQuery>...原创 2018-12-21 16:11:41 · 1483 阅读 · 0 评论 -
09.QT应用程序启动外部exe文件
根据QT帮助文档,写了一个小测试案例,在QT应用中,启动 一个外部的exe程序,目前此exe使用的QT编译形成,后期改用C#形式的exe文件。 #include "QProcessDemo.h"#include <QPushButton> #include <QProcess> #include <QMessageBox>#i...原创 2019-01-21 17:12:19 · 3032 阅读 · 1 评论 -
Qt创建多线程的两种方法
来源:https://github.com/czyt1988/czyBlog/tree/master/tech/QtThread1.摘要Qt有两种多线程的方法,其中一种是继承QThread的run函数,另外一种是把一个继承于QObject的类转移到一个Thread里。 Qt4.8之前都是使用继承QThre...转载 2019-01-29 09:36:04 · 4050 阅读 · 7 评论 -
11.QT中同一个源文件对应两个不同的ui
1 目录结构如下:2 源文件如下:3 头文件定义4 ui文件如下5 main.cpp中,开启哪个构造器,就运行哪个程序,源文件 DoubleUiTest.cpp中,槽函数通用。...原创 2019-05-14 14:55:34 · 1343 阅读 · 0 评论 -
13.QT中控制台程序console相关设置
1 修改控制台标题 system("title xxx");2 修改控制台背景颜色 system("color F0");3 颜色说明 4 效果原创 2019-06-18 14:53:35 · 1558 阅读 · 0 评论 -
14.QT中文编码
显示中文乱码解决:1,使用QStringLiteral ,变量为已知字符串时 QStringLiteral("中文");2,使用QTextCodec,theMsg 为sprintf组合得到时 char theMsg[255] = "中文编码显示"; QTextCodec *codec = QTextCodec::codecForName("UTF-...原创 2019-07-29 10:20:24 · 131 阅读 · 0 评论 -
15.QT中qchart绘制图表注意事项
第一步:在ui中,拖拽一个widget组件。右键提升为QChartView类第 二步:在构造函数中添加如下chart相关代码 m_Chart = new QChart(); m_Series = new QLineSeries(); m_Series->append(QPointF(100, 100)); m_Series->append(QP...原创 2019-08-03 10:54:27 · 1688 阅读 · 0 评论 -
01.QT中点击弹出新页面
调用者类定义CallWidget.h#pragma once#include <QtWidgets/QMainWindow>#include "ui_CallWidget.h"#include "widget.hpp"class CallWidget : public QMainWindow{ Q_OBJECTpublic: CallWid...原创 2018-08-16 22:59:29 · 2309 阅读 · 0 评论