qwindow qt6 qt

Qt编写视频监控系统77-Onvif组件支持非正常时间的设备

## 一、前言 在经历了大量的现场设备测试,至少几十种厂家、几百种设备,遇见过奇奇怪怪的问题,一个个想方设法解决,发现有个问题是在下发鉴权的时候,需要带上设备的时间,而不是发送端的时间,如果带的不是设备上的时间很可能鉴权失败。这个问题亲测十几种市面上各种视频监控系统客户端,均未实现,通过抓包分析,客 ......
监控系统 组件 时间 设备 系统

QT 界面全分辨率适配问题如何解决

通常我们在QT适配不同窗口大小的时候,是通过布局的方式来解决的。 但是如果窗口中的控件很多,而且有的控件需要叠放在别的控件上方,各个控件之间的位置没有什么规律而言的情况下,想要使用布局来适配各种分辨率,就极其困难,就算做出来,那工作量特别特别特别大 而且在后期想要对界面进行修改的时候,也是极其不方便 ......
分辨率 界面 问题 QT

Qt线程简单使用三:QRunnable~线程池

需求: 点击QPushButton按钮,QLabel中的数字,不断累加,一直到999。 做法: 创建任务类,点击QPushButton后,将任务类放入线程池中运行,通过任务类while循环,不断发送累加的数字回主线程,修改QLabel中的数字 其他: 线程池的好处是可以最大程度的利用线程,减少资源的 ......
线程 QRunnable

Qt线程简单使用二:QObject~创建任务类

需求: 点击QPushButton按钮,QLabel中的数字,不断累加,一直到999。 做法: 点击QPushButton后,启动线程,线程while循环,不断发送累加的数字会主线程,修改QLabel中的数字 其他: 一个任务类,可以创建多个任务,写法麻烦一点,视情况决定是否采用这种方法。 主要代码 ......
线程 任务 QObject

基于QT的空闲教室预约系统[2023-05-29]

# 基于QT的空闲教室预约系统[2023-05-29] [课程设计选题十]空闲教室预约系统 课程设计内容 利用Qt Creater 等工具和Linux 环境下时间日期 API实现一个基于图形界面的空闲教室预约系统,自行构建界面,可以实现选择日期、教学楼、教室座位数,查询相应空闲教室情况,录用申请信息 ......
空闲 教室 系统 2023 05

Qt拖拽功能

# Qt拖拽功能 ## 窗口拖拽文件读取文件路径+文件名 ``` void MainWindow::dragEnterEvent(QDragEnterEvent *ev) { if(ev->mimeData()->hasUrls()) { ev->accept();//接收拖动进入事件 } //ev ......
功能

qt-1

qt项目一般构建思路: 需要先画出ui,再使用ui->setupUi(this);来直接实现ui到代码; combox控件,ui上是下拉选项卡: ui设计中可以直接双击combox控件编辑其中内容; 一般用到控件comboBox的基本用法是获取当前的值: 1.currentIndex(); 获取当前 ......
qt

Qt之线程同步

在Qt中,线程同步可以使用以下几种方式来实现: 一、互斥锁(QMutex) 互斥锁用于保护共享资源,确保在同一时间只有一个线程能够访问该资源。线程在访问共享资源之前需要获取互斥锁,使用完后再释放互斥锁,以确保同一时间只有一个线程在执行关键代码段。 1.创建QMutex对象:在需要进行线程同步的地方, ......
线程

Qt+QtWebApp开发笔记(四):http服务器使用Session和Cookie实现用户密码登录和注销功能

前言 前面实现了基础的跳转,那么动态交互中登录是常用功能。 本篇实现一个动态交互的简单登录和注销功能,在Qt中使用Session和Cookie技术。 Demo 下载地址 链接:https://pan.baidu.com/s/1nkmsHgr-11Khe9k6Ntyf_g?pwd=1234 Html处 ......
QtWebApp 密码 Session 功能 服务器

Qt线程简单使用一:QThread~创建线程类子类

需求: 点击QPushButton按钮,QLabel中的数字,不断累加,一直到999。 做法: 点击QPushButton后,启动线程,线程while循环,不断发送累加的数字回主线程,修改QLabel中的数字 其他: 这种线程的写法是最简单的,全部是Qt封装好的,只需要重写 run 函数就可以了。 ......
线程 子类 QThread

QT文件操作

## 一、IO设备操作介绍 The QIODevice class is the base interface class of all I/O devices in Qt.QIODevice provides both a common implementation and an abstract ......
文件

Qt样式表踩坑小记

在一个项目里使用样式表修饰界面,最终实现的效果不错,坑也踩了不少,浪费好几天时间。 坑 1 :样式表的字符集。 这个问题只在MSVC里出现,使用MinGW应该不会出现这个问题。qt的默认字符集是utf8,但msvc要求源码必须是ANSI或者带BOM的Utf8,所以一般我们在做msvc项目时,把Qt环 ......
小记 样式

QT 绘制波形图、频谱图、瀑布图、星座图、眼图、语图

最近在学中频信号处理的一些东西,顺便用 QT 写了一个小工具,可以显示信号的时域波形图、幅度谱、功率谱、二次方谱、四次方谱、八次方谱、瞬时包络、瞬时频率、瞬时相位、非线性瞬时相位、瞬时幅度直方图、瞬时频率直方图、瞬时相位直方图、眼图、星座图、语谱图、瀑布图。 ......
眼图 波形 频谱 瀑布 星座

【VS Code+Qt6】拖放操作

由于老周的示例代码都是用 VS Code + CMake + Qt 写的,为了不误导人,在标题中还是加上“VS Code”好一些。 上次咱们研究了剪贴板的基本用法,也了解了叫 QMimeData 的重要类。为啥要强调这个类?因为接下来扯到的拖放操作也是和它有关系。哦,对了,咱们先避开一下主题,关于剪 ......
Code Qt6 Qt

Qt编写视频监控系统76-Onvif跨网段组播搜索和单播搜索的实现

## 一、前言 在视频监控行业一般会用国际onvif工具来测试设备是否支持onvif协议,工具的名字叫ONVIF Device Manager(还有个工具叫ONVIF Device Test Tool,专用于程序员测试各种数据交互),可以自行搜索下载,此工具位国际官方工具,如果此工具搜索不到摄像机, ......
网段 监控系统 系统 Onvif 视频

Ubuntu 下创建cmake的qt工程,使用CTK widget模块(cmake 工程配置)

一、先看 二、假设已经编译好ctk库 ,对cmakelists.txt进行设置 (解决:找不到头文件、未定义啥的错误) 三、目录结构 ......
工程 cmake 模块 Ubuntu widget

QT显示插件(LinuxFB)及其依赖的驱动(DRM/framebuffer)记录

关键词:Framebuffer、linuxfb、DRM等等。 QT在Linux中支持多种显示插件,包括EGLFS、LinuxFB、DirectFB、Wayland等。可以通过--platfrom选项指定选择何种插件。比如:./analogclock --platform linuxfb。 QT支持多 ......
framebuffer 插件 LinuxFB DRM

qt6 chart 画k线图

实现的基本功能: 1. 显示k线, 附赠一个close指标 2. 根据鼠标移动,画十字线 3. 跟随鼠标,显示当前k线的一个值。 4. 可以移动、缩放图形 运行环境:qt 6.5 (其他环境未测试) CMakeLists文件: cmake_minimum_required(VERSION 3.14) ......
线图 chart qt6 qt

Qt 中将std::cout 重定向到 qDebug

#include <QtCore>#include <iostream> void customMessageHandler(QtMsgType type, const QMessageLogContext& context, const QString& msg){ QByteArray loca ......
中将 qDebug cout std Qt

QT编程: 编写低功耗BLE蓝牙调试助手(Android系统APP)

由于工作需要,需要利用QT平台完成手机与ble蓝牙的通讯,所以就找了各种资料,算是初步的能够连接完成demo代码,但是依旧有些代码没有理解,比如特性那一片的代码,稍后还得研究啊(对了,这是低功耗蓝牙,不是经典蓝牙,看清楚了,当初不清楚经典蓝牙和低功耗蓝牙,浪费我一个星期,说多了都是泪,下面是代码和界 ......
功耗 助手 Android 系统 BLE

Qt之进程间通信(本地套接字)

一、QLocalServer QLocalServer是Qt框架中的一个类,用于创建本地套接字服务器。它可以用于在同一台计算机上的进程之间进行通信,而无需通过网络。 下面是使用QLocalServer的源码: MainWindow::MainWindow(QWidget *parent) : QWi ......
套接字 进程

QT 隐藏QMainWindow的最大化和最小化按钮

1 MyFrm *frm=new MyFrm (this); 2 frm->setWindowFlags(Qt::Window|Qt::WindowCloseButtonHint); 3 //frm->setWindowModality(Qt::WindowModal); //模态化显示 4 frm ......
QMainWindow 按钮 QT

Qt之QProcess

一、简介 QProcess是Qt框架提供的一个类,用于在应用程序中执行外部进程。它提供了一系列函数来启动、控制和与外部进程进行交互。 QProcess的一些重要特性和功能包括: 启动外部进程:QProcess可以用于启动外部应用程序或命令行工具。通过start函数可以指定要执行的程序路径以及相关的命 ......
QProcess

【转载】vs设置qt应用程序logo

1、下载一个ico,拷贝到主函数工程目录下 2、新建一个文件如logo.rc,内容如下:IDI_ICON1 ICON DISCARDABLE “logo.ico” 3、修改主函数工程文件Main.vcxproj在文件最后添加 <ItemGroup> <ResourceCompile Include= ......
应用程序 程序 logo

Qt编写视频监控系统75-计算实时码率并显示

## 一、前言 做监控摄像头的实时视频显示,一般还会要求统计实时码率显示在通道画面上,一个是为了测试下整个软件的性能,同时也看下当前到底是主码流还是子码流,设备到底是不是真的按照设定的码流大小来传输视频数据的。视频码率就是数据传输时单位时间传送的数据位数,一般我们用的单位是kbps即千位每秒。通俗一 ......
监控系统 实时 系统 视频 75

QT输出彩色log

要输出彩色信息有点类似于html的语法,即在要输出的文字前加上一段颜色指令。 指令格式如下\033[*m 这里的*就是转义字符,例如我们要输出一段绿色的文字,则 qDebug() << "\033[32m" <<"Hello!"; 即在输出文字前,先输出一个颜色指令。 注意这个指令对后续的输出都会生 ......
彩色 log

Qt Windows系统使用QBreakpad实战

前言最近想研究下Qt下跨平台的崩溃捕获,经过一番调查,发现有一个来自谷歌的开源项目叫Breakpad,统一了这三平台win、linux、mac生成dump的方式,通过它就可以跨平台。 使用也是相对简单的,大概就是下载源码,编译生成lib和dll,然后在你自己的程序中include头文件,就可以在你的 ......
实战 QBreakpad Windows 系统 Qt

Qt Creator按顺序编译多个子项目

0. 环境 Qt5.3.2 mingw482_32 1. 创建子项目 这个子项目类似于Visual Studio中解决方案一样的存在,用于管理多个其他子项目。点击文件->新建文件或项目->其他项目->子项目项目->Choose: 之后下一步,选择需要的编译器,我这里只有mingw,若有msvc编译器 ......
子项目 子项 顺序 多个 Creator

Qt 定时器的详细使用方法和注意点 Qobject QTimer

1 定义一个全局的变量用于记录定时器id,需要几个定时器就定义几个id.注意初始化id时候最好设置为0,因为 重复执行killTimer(0)不会报错 1 int temtimerID01 = 0 ; 2 // int QObject::startTimer ( int interval ) ; / ......
定时器 使用方法 Qobject 方法 QTimer

Qt+QtWebApp开发笔记(三):http服务器动态html连接跳转基础交互

前言 网页很多时候是动态的,于是本篇文章目标实现一个简答的动态页面—页静态页面互相跳转,点击可以跳转到子页面。 Demo 下载地址 链接:https://pan.baidu.com/s/1bbhcu1XTiaJRYGRQRG5a0g?pwd=1234 HTML基本页面交换 上一篇的“Hello Wo ......
QtWebApp 服务器 基础 笔记 动态