QT实战案例之简易Excel

本文目录导航:

QT实战案例之简易Excel

创建项目使用MainWindow为父窗口,创建名为SimpleExcel的QT5项目。

设计界面,添加动作至工具栏,并关联一个槽函数。

在主窗口中添加一个TableView。

右键项目,选择添加新元素,选择QT设计师类,创建名为SizeDialog的子窗口,用于设置行数和列数。

设计界面,给两个按钮绑定槽函数。

核心代码:引入组件和声明私有成员。

在构造函数中初始化模型,析构函数中删除模型。

声明获取行列数子窗口的公共方法,修改sizedialog.h。

在析构函数中,设置行数和列数,获取行数和列数。

实现获取行列数子窗口的公共方法,修改。

在中引入子窗口依赖,实现SetSize动作绑定的槽函数。

新增HeaderDialog子窗口,设计界面并给两个按钮绑定槽函数。

修改headerdialog.h,引入组件依赖,声明公开方法和私有成员。

在构造函数中初始化模型,实现设置表格头数据的方法。

创建LocateDialog子窗口界面,给Cancel按钮绑定槽函数。

修改locatedialog.h,引入组件依赖并声明成员。

处理设置单元格窗口的显示和关闭事件,实现设置处理单元格窗口最大值方法,实现设置处理单元格窗口行列值槽函数。

给Ok按钮绑定槽函数,实现设置单元格方法。

在mainwindow.h中引入组件依赖并声明成员。

实现设置单元格文本方法,设置单元格动作启用状态方法,给表格视图绑定点击槽函数,实现设置单元格槽函数。

QT实战案例之简易Excel

YLog4C--跨平台通用C++日志类

YLog4C是一个通用的C++日志类,已在Windows、Linux和Arm Linux平台下用于多个实战项目。

本类代码独立使用,只有一个cpp和一个h文件,不依赖其他第三方库和文件。

基本上只需把文件加到工程即可直接编译使用,偶尔有编译不过的,也只是头文件包含问题,修改对应包含即可。

这是laody完全自主开发的代码,若有问题或建议,请联系Email: 认为一个好工具类的使用应该是“拿来就用,用完不管”,YLog4C类也依据此原则,没有任何多余步骤,包含YLog4c.h,直接使用:编译运行后,直接在运行目录创建log文件:程序同时在控制台和日志文件输出如下内容:如在Linux或其他非Visual C++环境,请在工程目录创建stdafx.h文件,内容可为空。

程序默认行为如下所示,可调用接口进行个性化设置,设置立即生效。

1、日志路径为程序运行目录。

2、日志文件名格式:目录+应用程序名称+“_+日期+,应用程序名称为运行文件名,从首个“-”符号截断,如“ylog-v1.0”将截断为“ylog”。

3、每个日志文件最大100M,超过此尺寸,原文件更换为“xxxx_”(N为从1递增的整数),并建立新的日志文件。

4、每天最多4个日志文件,超过此数量,自动删除后缀最大的日志文件。

1、按日志级别由高到低,分别有Fatal、Error、Warn、Info、Debug和Buff六个调用接口,除Buff接口调用格式固定外,其他接口均与printf函数相同,采用可变参数格式。

2、低于当前已设置级别的调用不会输出任何内容,比如假设系统正常上线运行后,设置了级别为Info,则高于此级别的Fatal、Error、Warn、Info调用会输出,而低于此级别的Debug和Buff被屏蔽,不输出任何内容。

3、日志输出的日期通常已在文件名体现,因此日志行只按时分秒格式输出时间。

Info调用输出的格式是“hh:mm:ss 日志内容”,其他调用在日志内容前插入调用点的源文件名称和行数,方便问题定位。

4、为了能插入文件名和行数,调用实际采用宏定义方式,因此虽然类定义了LogBuff等公共函数,但请不要直接调用,而是调用前面描述的六个输出调用接口。

YLog4C不需任何设置就能工作的很好,实际上,笔者通常在项目中只做日志文件目录和日志级别两种设置。

个性化设置函数是静态成员函数,更改类的静态全局变量,立即生效,因此可以在系统运行过程中动态更新日志的行为。

设置应用程序名称、日志文件目录、日志文件的最多个数、是否输出到控制台、是否输出到文件、是否输出到函数、设置日志级别、是否每天一个文件、设置日志文件最大长度、设置是否打印线程ID、设置是否实时刷新等功能。

文件已发布在github上,网址: laody555/YLog4C。

Qt6开发视频播放器(项目实战)

本篇文章将使用QT6.4来实现一个简单视频播放器,在QT中使用一个视频播放器还是非常简单的。

让我们一起来实现这个视频播放器吧。

QMediaPlayer是Qt多媒体框架中的一个组件,它用于播放音频和视频文件。

它使用了跨平台的Qt音频和视频后端,并兼容多种音频和视频格式。

通过创建QMediaPlayer对象,调用setSource()函数指定媒体文件,然后调用play()函数开始播放。

QMediaPlayer还提供了多种信号和槽函数,用户可以在媒体播放期间捕获和处理事件,如播放出错、播放结束、媒体信息更新和媒体状态改变等。

使用这些信号和槽函数,可以实现控制播放进度、动态显示媒体元数据等功能。

QVideoWidget是Qt框架中的组件之一,用于显示视频的自定义窗口。

通过将QVideoWidget添加到应用程序的用户界面中,并使用QMediaPlayer或其他支持Qt视频框架的组件将视频播放到该窗口中,可以轻松实现视频播放器的自定义UI。

QAudioOutput是Qt框架中的组件,用于播放音频数据。

它使用跨平台的Qt音频后端,并兼容多种音频格式,可以将音频数据播放到扬声器或其他音频设备中,并控制播放进度、音量和状态等属性。

在实现播放器时,QMediaPlayer、QVideoWidget和QAudioOutput是关键组件。

使用这些组件可以创建一个基本的视频播放器。

以下是一个简单的视频播放器代码实现示例:cpp#include mainwindow.h#include ui_mainwindow.h#include #include #include MainWindow::MainWindow(QWidget *parent) :QMainWindow(parent),ui(new Ui::MainWindow){ui->setupUi(this);QMediaPlayer *mediaPlayer = new QMediaPlayer(this);QVideoWidget *videoWidget = new QVideoWidget(this);QAudioOutput *audioOutput = new QAudioOutput(this);// 设置播放路径mediaPlayer->setMedia(QUrl(QMediaContent::fromLocalFile(\path/to/video\)));// 链接信号与槽connect(mediaPlayer, &QMediaPlayer::positionChanged, videoWidget, &QVideoWidget::setPos);connect(mediaPlayer, &QMediaPlayer::durationChanged, videoWidget, &QVideoWidget::setMinimumSize);connect(mediaPlayer, &QMediaPlayer::stateChanged, this, &MainWindow::handleMediaPlayerStateChanged);connect(mediaPlayer, &QMediaPlayer::error, this, &MainWindow::handleMediaPlayerError);// 设置播放器、视频窗口和音频输出videoWidget->setMediaPlayer(mediaPlayer);ui->layout->addWidget(videoWidget);ui->layout->addWidget(audioOutput);}void MainWindow::handleMediaPlayerStateChanged(QMediaPlayer::State state){// 处理播放器状态改变}void MainWindow::handleMediaPlayerError(QMediaPlayer::Error error){// 处理播放器错误}在实现视频播放器时,需要在文件中加上QT += multimedia以使用多媒体框架组件。

在最终效果中,视频播放器将显示在用户界面上,用户可以控制播放、暂停、停止视频,同时还可以调整音量和播放进度。

以上内容涵盖了使用QT6.4实现视频播放器的基本步骤和关键组件。

如果您需要更详细的代码实现和示例,可以参考Qt官方文档或相关的教程资源。

你可能想看:
« 上一篇
下一篇 »

相关推荐

FreeBasic:强大免费开源的64位basic编译器及应用优势

2025年05月10日

82阅读

脊柱侧弯矫正方法大盘点:运动康复、支具矫正等多种方式

2025年05月09日

87阅读

如何在winForm标题栏去掉标题文字且任务栏图标正常显示

2025年05月09日

86阅读

十一黄金周促销广告词大全,国庆购物狂欢等你来

2025年05月09日

78阅读

关闭快速编辑模式及插入模式,设置控制台指定文字颜色举例

2025年05月09日

63阅读

黄金搭档低糖高钙饮品包装及成分功效全解析,适合人群要知晓

2025年05月09日

91阅读