
QT笔记
.
大魔王来巡山
这个作者很懒,什么都没留下…
展开
-
ffmpeg-qt音视频开发简单入门
ffmpeg+qt简单入门,视频播放器实现音视频同步原创 2022-10-15 22:04:58 · 784 阅读 · 1 评论 -
vlc-qt简单入门
vlc-qt简单入门原创 2022-10-12 16:10:01 · 1511 阅读 · 0 评论 -
C++写一个信号槽
C++仿写QT信号槽(简化版)原创 2022-05-25 22:48:26 · 499 阅读 · 0 评论 -
QT启动外部进程并隐藏界面
QString program = QStringLiteral("··/Test/test.exe");STARTUPINFO si={sizeof(si)};PROCESS_INFORMATION pi;si.dwFlags= STARTF_USESHOWWINDOW|STARTF_USESTDANDLES;si.wShowWindow =false;CreateProcess(NULL,(LPWSTR)program.toStdWString().c_str(),NULL,NULL,FALS原创 2020-12-29 11:33:39 · 3518 阅读 · 2 评论 -
MFC和QT混合编译
所需文件支持Qt5的qtwinmigrate,下载地址:https://github.com/qtproject/qt-solutions需要用到其中的qmfcapp.h qmfcapp.cpp qwinwidget.h qwinwidget.cpp等文件Qt Add-in插件VS新建一个MFC工程,然后卸载项目,右击编辑***.vcxproj工程文件找到以下配置处,添加Keyword字段Qt4VSv1.0,可以新建一个QT工程打开看看值是多少<PropertyGroup Label.原创 2020-09-24 14:20:58 · 1615 阅读 · 0 评论 -
QT自定义控件-经纬度输入框
原文CoordinateEdit.h#pragma once#include <QWidget>#include <QEvent>class QLineEdit;class QLabel;class CoordinateEdit : public QWidget{ Q_OBJECTpublic: enum Type { Type_Longitude, Type_Lagitude }; CoordinateEdit(Type type = Type原创 2020-10-21 23:37:20 · 1964 阅读 · 0 评论 -
QGraphicsView简单使用
自定义Item,点// cgraphicsitem.h#ifndef CGRAPHICSITEM_H#define CGRAPHICSITEM_H#include <QGraphicsItem>#include <QGraphicsSceneMouseEvent>class CGraphicsItem : public QGraphicsItem{public: CGraphicsItem(QPointF p,QGraphicsItem* parent =原创 2020-10-11 21:32:05 · 3229 阅读 · 1 评论 -
QGraphicsView重写paint事件实现实时画图显示
场景类cgraphicsscene.h#ifndef CGRAPHICSSCENE_H#define CGRAPHICSSCENE_H#include <QGraphicsScene>#include <QGraphicsPathItem>#include <QList>#include "cgraphicsview.h"class CGraphicsScene : public QGraphicsScene{ Q_OBJECTpublic:原创 2020-10-09 23:16:28 · 4666 阅读 · 4 评论 -
QT序列化通过文件存取结构体数据
结构体struct Data{QString a;QString b;int c;QDateTime d;};原创 2020-07-20 19:39:47 · 2898 阅读 · 3 评论 -
QT存放结构体数据在动态内存中
方式一 Data d1,d2; d1.a = "aaa"; d1.b = "bbb"; d1.c = 3; d1.d = 3.3; d2.a = "ccc"; d2.b = "ddd"; d2.c = 4; d2.d = 4.4; // 申请空间 char *p = (char*)malloc(sizeof(Data)); // 将数据复制进空间 memcpy(p,&d1,sizeof(Data)).原创 2020-07-22 20:17:00 · 1055 阅读 · 0 评论 -
QT连接SQL Server以及MySql
问题1:连接SQL Server时,使用如下方式方式1 m_db = QSqlDatabase::addDatabase("QODBC"); m_db.setHostName("localhost"); m_db.setDatabaseName("Learn"); m_db.setUserName("sa"); m_db.setPassword("123456");报错: [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动原创 2020-07-18 19:53:25 · 705 阅读 · 3 评论 -
QFile的简单使用
打开文件可以使用C中的文本流fopen或者open等方式// 以"w"方式每次打开都会清空,如果不想清空可以使用"a"或"a+"FILE *test = fopen("test.txt","w+"); if(test) QTextStream textS(test,QIODevice::WriteOnly);在QT中当然还是使用自己的接口方便 QFile file; file.setFileName("test.txt"); // 如果想每次打卡清空加上|QIODevice::Trunca原创 2020-06-08 22:45:47 · 1646 阅读 · 0 评论 -
QT类模板和类模板的特化
//当结构体为struct FireData{ QString type; struct Group { int no; QString a; QString b; QString c; }; QList<Group> groups;};class MyData{public: MyData() {} ~MyData() {} FireData m_data; QString getValue(int col) { if (col == 0原创 2020-05-26 23:43:43 · 1137 阅读 · 0 评论 -
QT读取json文件
QT本身就有读取json的接口,简单又方便json文件注意:json中含有中文,文件编码格式应保存为UTF-8,其他编码可能中文读取不出来,json中如果有字段值是bool类型,直接填true/false就好了{"scale":10.0,"table1":[{"t":1,"h":"第一列","f":true},{"t":2,"h":"第二列","f":true},{"t":3,"h":"第三列","f":false},{"t":4,"h":"第四列","f":true},],"tabl原创 2020-05-21 14:11:16 · 4399 阅读 · 0 评论 -
QT控件通过setProperty设置属性显示内容
QLineEdit设置其text属性QLineEdit *edit = new QLineEdit(this);edit->setProperty("text","hello");QPlainTextEdit设置其plainText属性QPlainTextEdit *edit = new QPlainTextEdit(this);edit->setProperty("plainText","hello");QTextEditQTextEdit *edit = n.原创 2020-05-24 23:02:25 · 4619 阅读 · 2 评论 -
QChart画折线图坐标不准的问题
坐标不准主要是因为坐标轴值范围平分的不够均匀QValueAxis *axisx = new QValueAxis; //创建X轴值序列axisX->setRange(0,15);//设置X轴值范围为0-15axisX->setLabelFormat("%u");axisX->setGridLineVisible(true);//显示坐标轴的网格线,便于观察axisX-&...原创 2020-04-30 10:21:29 · 2441 阅读 · 2 评论 -
QT界面类动态库的生成及调用
新建项目-Qt Library-假如项目名称为dllTestdlltest.h#pragma once#include "dlltest_global.h"class DLLTEST_EXPORT dllTest{public: dllTest(){} ~dllTest(){}}#ifdef __cplusplusextern "C" {#endif ...原创 2020-04-10 10:27:43 · 1452 阅读 · 3 评论 -
QT窗口不使用布局实现自适应不同分辨率的屏幕
项目需求:程序主界面的背景图片中包含一个方形黑色背景,这个黑色背景在设计师中贴上widget等几个控件,然后在控件上显示需求的内容程序默认全屏,也不用调整大小,所以只考虑在不同分辨率的屏幕上显示问题假设在19201080的屏幕下开发,将主界面的大小也设置为19201080,先把背景图贴上去,然后再放控件,大小位置都调整好,QT的Designer界面可以清楚的看到每个控件的坐标以及长宽预览看...原创 2020-02-24 15:31:32 · 3556 阅读 · 7 评论 -
QT学习记录-样式表属性整理
修改某一类控件如QWidgetQWidget{border:1px solid gray;background:blue;}修改某一类指定的控件QWidget#MyWidget{background:blue;}整个界面那个多控件要设置stylesheet,个人感觉最方便的方法就是写在一个qss文件中,然后项目工程添加资源,读取文件设置,例如:void MyWidget::lo...原创 2020-01-17 16:23:14 · 359 阅读 · 0 评论 -
QT学习记录-按键模拟键盘事件
通过发送键盘按下抬起事件,模拟现实中的按键操作,在此之前,要将ui界面的按钮的focusPolicy属性设置成NoFocus,这样鼠标点击它的时候就不会获取焦点,也可以用代码设置ui->pushButton_1->setFocusPolicy(Qt::NoFocus)//模拟键盘按键1void Widget::on_pushButton_9_clicked(){ QWi...原创 2020-01-15 22:07:50 · 3616 阅读 · 1 评论 -
QT学习记录-自定义开关按钮
在网上收藏了好多开关效果惊艳的教程,想了想写个尽量简单点的,给自己应急用,但是效果就没那么好了switchbutton.h#ifndef SWITCHBUTTON_H#define SWITCHBUTTON_H#include <QWidget>#include <QEvent>#include <QPaintEvent>#include <...原创 2019-12-26 20:33:34 · 543 阅读 · 0 评论