一、环境介绍 QT版本: 5.12.6 操作系统: win10 64位 二、添加快捷注释 /* 工程: %{CurrentProject:Name} 日期: %{CurrentDate:yyyy-MM-dd...} 作者: DS小龙哥 环境: win10 QT5.12.6 MinGW32 功能: */
执行可执行文件,报错 查看文件类型 这不是ARM上运行的执行文件,编译链有问题 修改qmake生成的makefile 更新嵌入式设备的文件 不过上面的解决方案不是很好,在QT编译一次,或者重新生成一次...,都要单独处理一方的交叉编译环境 有个更简单的处理方案 给QT设置两个编译方式 1.compilers 2.qt versions 3.kits 4.project kit 5.演示arm-linux-gcc...编译 6.演示x86/64编译 同时会生成桌面应用 <a href="https://im.csdn.net/im/main.<em>html</em>
理论上任何语言生成的COM组件调用流程应该都是一样的。...QT创建COM的方法看这里: (1)VS2017下使用QT生成COM组件: https://blog.csdn.net/xiaolong1126626497/article/details/112556866...VS2017+QT插件的方式生成的。...->generateDocumentation(); QFile outFile("com_function.html"); outFile.open(QIODevice ::ReadWrite...isEmpty(target.path): INSTALLS += target 3.4 运行测试 说明: 如何调用运行失败,记得把COM组件dll依赖的所有文件拷贝到现在测试程序运行的目录下,防止找不到依赖文件运行失败
一、功能介绍 运行环境:Windows10 64位 QT通过QAudioInput类读取声卡PCM数据,在封装WAV头,转为WAV格式的文件保存到本地。 可以选择指定的声卡录制、播放音频。...代码里固定录制10S的声音,有进度条显示录制和播放的进度。 在Android、ubuntu、windows测试运行OK。...define MAINWINDOW_H #include #include #include //这五个是QT... #include #include QT_BEGIN_NAMESPACE namespace Ui { class MainWindow; } QT_END_NAMESPACE...SAVE_WAV_FILE_PATH "test.wav" #endif /* * 设置QT界面的样式 */ void MainWindow::SetStyle(const QString &qssFile
QList是目前最常用的容器类,它存储了给定类型的值的一个列表,而这些值可以通过索引访问。QList使用数组来实现,以确保进行快速的基于索引的访问。...使用QList::append和QList::prepend在列表的两端进行添加项目。 使用QList::insert()在列表的中间插入项目。...// 第一个“mm”的位置,默认从位置0开始往前查找,返回第一个匹配的项目的位置 qDebug() << "the first 'mm' index: " << list.indexOf...如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。...发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/230957.html原文链接:https://javaforall.cn
QT 是一个跨平台C++图形界面开发库,利用QT可以快速开发跨平台窗体应用程序,在QT中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率。...目前,QT开发中常用的基础组件有以下几种:PushButton 按钮组件LineEdit 单行输入组件SpinBox 数值组件HorizontalSlider 滑块条组件LCDNumber 数码表与LCD...,这些组件我将通过一个个小案例,帮助大家理解组件的应用方式与应用场景。...PushButton 按钮组件: 在QT中任何组件都可以用两种创建方式,我们可以通过使用new关键字动态创建按钮,也可以使用QT的图形化工具自动生成。...// 设置窗体全屏显示 // 设置主窗体特殊属性 // setWindowFlags(Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint);
一、QT程序发布方式 Qt 发布的时候,通常使用两种方式: (1)静态编译 (2)动态编译 静态编译:把相关联的库一并引入可执行程序,虽然发布简单,但可执行程序本身较大。...二、动态打包发布 2.1 打包工具 在QT5以后的版本中,Qt 的编译器安装包里自带了一个打包工具: windeployqt.exe windeployqt 工具可以自动复制插件文件夹和 dll 文件、...,可以得到完整的 exe 程序发布集合,解决所有的依赖关系,不用手动去一个一个复制(QT4程序发布就需要自己手打复制,比较麻烦)。 2.2 准备工作 1. 需要一个完整正常编译的 QT 工程。 2....2.4 打包发布(自动寻找依赖) 第一步: 将 QT 编译生成的 xxx.exe 可执行文件拷贝到一个单独的文件夹。...第二步: 按下键盘上的windows按钮,打开窗口列表,找到QT安装的位置(按字母排序的Q),选择当前QT程序编译时使用的编译器,打开命令行终端。 第三步: 切换到QT程序存放的目录下。
一、环境介绍 操作系统: win10 64位 QT版本: 5.12.6 Visual Studio IDE 版本: 2017 二、创建COM组件 为了方便测试,我这里使用QT来创建COM组件,再由QT...QT创建COM的方法看这里: (1) VS2017下使用QT生成COM组件: https://blog.csdn.net/xiaolong1126626497/article/details/...创建的COM组件可以参考上一篇文章: QT应用编程: windows下QT调用COM组件: https://blog.csdn.net/xiaolong1126626497/article/details...QString DOC = ax_widget->generateDocumentation(); QFile outFile("com_function.html"); outFile.open...QString DOC = ax_widget->generateDocumentation(); QFile outFile("com_function.html"); outFile.open
一、环境介绍 操作系统介绍:win10 64位 QT版本: 5.12.6 二、功能介绍 应用程序运行时,用户经常会对程序做一些个性化设置; 关闭程序之后,下次打开还原上次的设置。...QT内置的QDataStream 类提供了串行化处理数据流的方法。数据流是一个编码信息的二进制流,它与主机的操作系统、CPU 或字节顺序 100%的没有关系。...QT内置的QTextStream 和 QDataStream 都是面向数据流的, QTextStream 可以完成的功能 QDataStream 都能完成,但是他们的侧重点不同。...QTextStream 是针对文本流的处理, QTextStream 中存放的都是用来阅读的普通文本数据,QTextStream 的局限性主要是支持输入的数据类型较少,比如:像素图 QPixmap、颜色...QDataStream 可以将所有的 C++ 基本类型,包括 QT 自己封装的类型,按顺序分解成基本类型进行封装。
QT 是一个跨平台C++图形界面开发库,利用QT可以快速开发跨平台窗体应用程序,在QT中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率。...目前,QT开发中常用的基础组件有以下几种: PushButton 按钮组件 LineEdit 单行输入组件 SpinBox 数值组件 HorizontalSlider 滑块条组件 LCDNumber 数码表与...,就是在开发中经常被使用的,这些组件我将通过一个个小案例,帮助大家理解组件的应用方式与应用场景。...PushButton 按钮组件: 在QT中任何组件都可以用两种创建方式,我们可以通过使用new关键字动态创建按钮,也可以使用QT的图形化工具自动生成。...; // 设置窗体全屏显示 // 设置主窗体特殊属性 // setWindowFlags(Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint
概述 在Qt中,事件都是从抽象类QEvent派生出来的对象。它们表示发生在应用程序内部或由于应用程序需要了解的外部活动而发生的事情。...事件可以由QObject子类的任何实例接收和处理,但它们与小部件尤其相关。 本文档介绍了在典型应用程序中如何传递和处理事件。 2....事件如何传递 当事件发生时,Qt通过构造适当的QEvent子类的实例来创建一个事件对象来表示它,并通过调用事件函数将其传递到QObject的特定实例(或其子类之一)。...如果您没有在虚拟函数的实现中执行所有必要的工作,则可能需要调用基类的实现。 5. 事件过滤器 6. 发送事件 7. 小结 Qt的主函数中会开启一个事件循环,其实就是一个处理事件的while循环。...return a.exec(); 二、应用举例 1.
,表格结构分为表头,表中数据两部分,表格结构可看作一个二维数组,通过数组行列即可锁定特定元素,如下代码是针对表格结构的基本使用方法,分别实现了表头数据的初始化,元素的插入等基本操作。...{ ui->setupUi(this); // 初始化tableView表头 model->setColumnCount(3); model->setHeaderData(0,Qt...(2,Qt::Horizontal,QString("年龄")); ui->tableView->setModel(model); ui->tableView->horizontalHeader...()->setDefaultAlignment(Qt::AlignLeft); // 表头居左显示 //设置列宽 ui->tableView->setColumnWidth(0,101);...setForeground(QBrush(QColor(255, 0, 0))); //设置字符位置 model->item(i,0)->setTextAlignment(Qt
一、环境介绍 操作系统: win10 64位 QT版本: QT5.12.6 编译器: MinGW 32 串口调试助手,在嵌入式开发中是很常用的。...效果图 三、核心代码 3.1 widget.cpp #include "uart_mainwindow.h" #include "ui_uart_mainwindow.h" /* * 设置QT...条目最大只能存放12行数据,多出的数据不会导入!")...tr("路径为空,请选择正确的路径!")..."注意: 每包的字节数量和间隔时间只有在开始发送文件之前设置有效!
为了使用简单,需要先写一个单件类,头文件的代码如下: 其中静态方法Instance保证IconHelper的实例全局唯一 (注意构造函数已经私有化了) #ifndefICONHELPER_H #defineICONHELPER_H...voidSetIcon(QPushButton*ctl,QCharc,intsize=10); signals: publicslots: }; #endif//ICONHELPER_H 下面来看一下CPP文件的代码...应用程序所在目录下创建res目录,并放置字体文件/res/fontawesome-webfont.ttf 然后加载到全局字体中 #include"IconHelper.h" IconHelper*IconHelper...1、黑色背景是我的桌面颜色,大家可以忽略 2、虽然右键菜单里写了“开机自启动”,但我并没有开发这个功能,请见谅 3、我会在下一篇文章里公布这个小程序的源码,敬请期待 4、这个小程序会始终在你的桌面上,...你点显示桌面,它还是在你的桌面上 ?
QtCharts 组件是QT中提供图表绘制的模块,该模块可以方便的绘制常规图形,Qtcharts 组件基于GraphicsView模式实现,其核心是QChartView和QChart的二次封装版。...在使用绘图模块时需要在pro文件中包含QT += charts来引入绘图类库。图片然后还需在头文件中定义QT_CHARTS_USE_NAMESPACE宏,这样才可以正常的使用绘图功能。...#include #include QT_CHARTS_USE_NAMESPACE// 解决MSVC编译时,界面汉字乱码的问题#if _MSC_VER >=...1600#pragma execution_character_set("utf-8")#endif由于QT中不存在单独的绘图画布,因此在绘图前我们需要在窗体中放入一个graphicsView组件。...chart->setAxisX(axis, series); chart->legend()->setVisible(true); chart->legend()->setAlignment(Qt
继承后需要重写三个函数,分别是Model的行数和列数、以及每个Cell需要显示的内容。 这次和大家分享Qt Model/View教程的几个其他例子。...上次的示例中我们是在role == Qt::DisplayRole时进行的显示,那么扩展时是不是有其他Roles属性? 具体扩展的内容,是不是也根据这些Roles呢?答案是肯定的。...无需更改其他任何内容即可设置字体,背景色,对齐方式和复选框等属性,其他属性可请参阅Qt名称空间文档以了解有关Qt :: ItemDataRole枚举功能的更多信息。...这里面值得注意的是调用data()函数的频率,具体可打印效果进行查看,一次可以判断使用分离的模型如何影响应用程序的性能。还有就是当鼠标悬浮在Cell时,都会对data()进行调用。...小结:本次主要和大家分享一下data()函数中其他属性的应用以及如何通过信号更新Cell数据。下次和大家分享下在Model中如何设置行列标题以及如何设置Table的可编辑属性。 学不可以已,积少成多!
QThread库是QT中提供的跨平台多线程实现方案,使用时需要继承QThread这个基类,并重写实现内部的Run方法,由于该库是基本库,默认依赖于QtCore.dll这个基础模块,在使用时无需引入其他模块...,该锁lock()锁定与unlock()解锁必须配对使用,线程锁保证线程间的互斥,利用线程锁能够保证临界资源的安全性....线程锁解决的问题: 多个线程同时操作同一个全局变量,为了防止资源的无序覆盖现象,从而需要增加锁,来实现多线程抢占资源时可以有序执行....临界资源(Critical Resource): 每次只允许一个线程进行访问 (读/写)的资源. 线程间的互斥(竞争): 多个线程在同一时刻都需要访问临界资源....,QMutexLocker会保护加锁区域,并自动实现互斥量的锁定和解锁操作,可以将其理解为是智能版的QMutex锁,该锁只需要在上方代码中稍加修改即可.
QtCharts 组件是QT中提供图表绘制的模块,该模块可以方便的绘制常规图形,Qtcharts 组件基于GraphicsView模式实现,其核心是QChartView和QChart的二次封装版。...在使用绘图模块时需要在pro文件中包含QT += charts来引入绘图类库。 然后还需在头文件中定义QT_CHARTS_USE_NAMESPACE宏,这样才可以正常的使用绘图功能。...#include #include QT_CHARTS_USE_NAMESPACE // 解决MSVC编译时,界面汉字乱码的问题 #if _MSC_VER...>= 1600 #pragma execution_character_set("utf-8") #endif 由于QT中不存在单独的绘图画布,因此在绘图前我们需要在窗体中放入一个graphicsView...->setAxisX(axis, series); chart->legend()->setVisible(true); chart->legend()->setAlignment(Qt
QThread库是QT中提供的跨平台多线程实现方案,使用时需要继承QThread这个基类,并重写实现内部的Run方法,由于该库是基本库,默认依赖于QtCore.dll这个基础模块,在使用时无需引入其他模块....实现简单多线程: QThread库提供了跨平台的多线程管理方案,通常一个QThread对象管理一个线程,在使用是需要从QThread类继承并重写内部的Run方法,并在Run方法内部实现多线程代码....,该锁lock()锁定与unlock()解锁必须配对使用,线程锁保证线程间的互斥,利用线程锁能够保证临界资源的安全性.线程锁解决的问题: 多个线程同时操作同一个全局变量,为了防止资源的无序覆盖现象,从而需要增加锁...,来实现多线程抢占资源时可以有序执行.临界资源(Critical Resource): 每次只允许一个线程进行访问 (读/写)的资源.线程间的互斥(竞争): 多个线程在同一时刻都需要访问临界资源.一般性原则...,QMutexLocker会保护加锁区域,并自动实现互斥量的锁定和解锁操作,可以将其理解为是智能版的QMutex锁,该锁只需要在上方代码中稍加修改即可.
2015-09-22 01:43:08 写这篇文章主要是来向大家介绍一下HTML5当中download属性的用法和之前下载的区别。需要的朋友可以看一下。...在以往传统的html下载文件样式是这样的 下载 而在HTML 5浏览器中,可以支持download属性了,如下: 下载 download属性的好处在于,在用户下载文件的时候,显示在用户浏览器 中的“另存”为的文件显示框中...,显示的是这个downloader属性中显示的 东西了,比较友好 HTML5里,download属性为下载的文件取一个合适的名字,而不是使用原生的服务器文件名。...这个属性在存在文件交互的地方非常有用,在服务器端的文件名需要是及其独特的(上例中的文件名就很独特不是吗?),但是一堆乱码对用户来说没有任何作用,download属性定义文件名对用户更有意义。
领取专属 10元无门槛券
手把手带您无忧上云