QT
文章平均质量分 76
QT的简单应用
我什么都布吉岛
Keep writing,Keep thinking!
展开
-
如何创建一个共享库
符号及其可见性标记在共享库中的符号(Symbols)表示源代码中的函数、变量和类,符号需要输出才能被客户端使用。共享库的客户端指的是应用或者其他库,我们可以将源代码中所有的符号都输出,也可以通过选择哪些符号是可见的(publicly visible),哪些符号是隐藏(invisible )的,我们需要一种特殊的手段来指明符号的这种属性。这些可见的我们称为公有符号(public symsbols),这个过程称之为导出(export)或让符号公有可见(public visible),除了这些公有符号外的其他符翻译 2021-02-09 11:30:46 · 973 阅读 · 0 评论 -
QCustomplot(五)QCPAxisRect进行子绘图
文中介绍了QCustomPlot 子绘图需要掌握的类,也就是Matlab中的subplot,最后给出了一个完整的例子。原创 2021-12-20 22:53:36 · 8263 阅读 · 8 评论 -
QCustomplot(零)QCustomPlot官方Demo使用
如何利用官方Demo完成自己项目上的绘制任务。原创 2021-12-17 13:03:47 · 1259 阅读 · 0 评论 -
QCustomPlot (一) 画一个简单正弦曲线
简单安装后设置一下头文件就可以,如果你使用的是Qt5,别忘了在pro文件中加上Qt +=printsupport。因为这是一个简单的曲线,我们就不用ui文件了。MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent){ QString demoName; this->resize(650,500); QCustomPlot *customPlot=new QCustomPlot(); cu原创 2021-05-29 00:40:40 · 1741 阅读 · 0 评论 -
QCustomplot (二) 为正弦曲线线型号、宽度和颜色、填充
为正弦曲线增加曲线相关参数,如颜色、线型、坐标轴填充。原创 2021-05-29 21:29:18 · 2560 阅读 · 0 评论 -
QCustomplot (三) 多个曲线、带状填充
积分区域+多个曲线原创 2021-05-29 21:51:34 · 2349 阅读 · 0 评论 -
QCustomplot (四) 控制轴相关属性
数字格式和精度我们可以通过void QCPAxis::setNumberFormat ( const QString & formatCode)设置轴数字属性。formatCode是一个字符串,第一个参数和QString::number()关于Format的规定一致:FormatMeaningeformat as [-]9.9e[+Eformat as [-]9.9E[+fformat as [-]9.9guse e or f format,原创 2021-05-30 12:31:53 · 1332 阅读 · 0 评论 -
QT事件循环
一句话说明事件循环:以队列形式重新分配线程时间片。一、事件有关的几个问题问题1:Qt中常见的事件有哪些?答:鼠标事件(QMouseEvent)、键盘事件(QKeyEvent)、绘制事件(QPaintEvent)、窗口尺寸改变(QResizeEvent)、滚动事件(QScrollEvent)、控件显示(QShowEvent)、控件隐藏(QHideEvent)、定时器事件(QTimerEvent)等等。。问题2:Qt是事件驱动的,这句话该怎么理解呢?Qt将系统产生的信号(软件中断)转换成Qt事件,并且原创 2021-10-19 15:55:36 · 490 阅读 · 0 评论 -
QObject对象的析构
一直有个疑惑,为什么QT中的控件虽然调用了new但是没有看到其调用delete。说明这个问题首先要明白继承关系中的析构顺序。看下面这个例子:class A{public: A() { std::cout << "A()" << std::endl; } ~A() { std::cout << "~A()" << std::endl; }};class a :public A{public: a() { std::cout <<原创 2021-06-30 11:21:42 · 758 阅读 · 0 评论 -
String-Based 和 Functor-Base的Connect区别
在Qt5.0之后,QObject::connect在String-Based的基础上增加了Functor-Base形式的语法,他们之间的区别主要如下:基于字符串的基于函数的类型检查完成时间运行时编译时是否可以隐式转换否是支持信号连接至Lambda否是支持槽参数大于信参数(通过默认参数)是否支持C++函数连接至QML函数是否下面将对上述几个方面进行解释:一、类型检查和隐式转换String-based类型的连接将会在运行时对比字符串来原创 2021-06-19 15:06:24 · 203 阅读 · 0 评论 -
交叉编译Qt工程
交叉编译的概念请查看我之前的一篇文章:如何进行交叉编译?本文的目标是:在Ubuntu20.04上编译Qt程序并在树莓派上运行。一、树莓派上安装合适的Qt版本如果你的板子上没有安装Qt,那么请安装对应的Qt版本。这一步非常重要,最好不要自行安装Qt版本,而是要安装发行版经过测试的、兼容的Qt版本。树莓派安装Qt也相当简单:sudo apt-get updatesudo apt-get install qt5-defaultsudo apt-get install qtcreatorsudo ap原创 2021-04-05 15:24:39 · 5288 阅读 · 4 评论 -
Linux QT无法输入中文
解决方法:将Ubuntu16.04 系统的在platforminputcontexts文件夹支持文件libfcitxplatforminputcontextplugin.so拷贝到相应QT插件中的同一文件夹platforminputcontexts中。sudo cp /usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so ~/Qt5.12.9/Tools/QtCre原创 2020-09-03 10:13:06 · 179 阅读 · 4 评论 -
QT多线程简单使用
QT的多线程相较于Linux/Unix的pthread和C++11的thread,基本一致,只不过QThread因为要利用信号与槽的机制,所有的线程都是通过继承QObject来实现的。一、QT历史上的两种使用多线程继承QThread对象QRunnable方法moveToThread方法QtConcurrent::run方法关于每一种方法的优缺点可以查看这位博主的总结Qt中使用线程的几种方式及区别,因为项目中使用的多线程不需要频繁的创建和销毁,所以使用了第三种方法moveToThread方法。原创 2020-07-29 00:30:38 · 2981 阅读 · 0 评论 -
QT信号与槽小结
Signal & Slot 是QT语言的核心机制,Qt提供了信号与槽机制用于完成界面操作的响应,是完成任意两个Qt对象之间通信的机制。其中,信号会在某个特定情况或动作下被触发,槽是等同与接受并处理信号的函数。[1]一、关于信号与槽的映射关系信号与槽的映射关系用集合的关系无非是上面四种,一个信号可能指向多个处理信号的槽;一个槽也可能被多个信号关联。二、定义这种关系的接口QObject::connect2.1 QObject的signal&slot “声明形式”QMetaObj.原创 2020-07-28 23:15:37 · 391 阅读 · 0 评论 -
QT的学习(一)如何查阅QT文档?(以QPushButton为例)
QT学习了一段时间,发现最重要的还是通过自带的帮助文档来查询函数使用。如今天我用到connect参数不匹配。no matching funtion for call to "出错语句。简单啊,直接用F1完事,右侧就可以看到具体的调用说明了。不懂的直接点击超链接可以继续阅读,唯一要求的就是英文好一点。其实还可以通过查找的方式来看一系列的(指重载的一些函数),ctrl +6打开帮助文档,切换到index方式,查找就完事了。以QPushButton为例:真的超级好用,要是STL要是也用一个这样帮助文原创 2020-07-27 10:01:09 · 5330 阅读 · 0 评论