Is this you? As a journalist, you can create a free Muck Rack account to customize your profile, list your contact preferences, and upload a portfolio of your best work.
Claim your profile
Articles by QString name
QT 智能指针 QPointer QScopedPointer QSharedPointer QWeakPointer QSharedDataPointer 隐式共享 显示共享
QPointer QPointer 是一种受保护的指针,当其引用的对象被销毁时,它会被自动清除(但是,销毁引用对象还是必须手动delete)。QPointer所指向的对象必须是QObject或其派生类对象。 当多个指针指向同一个 Object 对象时,引用的对象可能被释放掉,这时使用 QPointer 就可以安全的测试引用对象是否有效,防止发生指针空悬。 注意:Qt5 之前,QPointer 指向一个 QWidget 对象(或子类对象)时,QPointer 由 QWidget 的析构函数清除,Qt5 之后 由 QObject 的析构函数清除。在析构函数销毁被跟踪 QWidget 的子项之前,任何跟踪 QWidget 的 QPointers 都不会被清除。 QPointer 提供的函数和运算符与普通指针的函数和运算符相同,但算术运算符+、-、 ++ 和 --除外(它们通常仅用于对象数组)。 创建 QPointer 指针,可以使用构造函数、用 T * 赋值或相同类型的其他 QPointer 。QPointer 比较可以使用 == 和 !=,或使用 isNull() 进行测试。可以使用...
QT多线程实现基于TCP的文件传输功能_qt大文件传输-CSDN博客
写在前面 QT中多线程的两种使用方式: 1、继承QThread类并重写run()函数。 2、使用moveToThread()函数将QObject派生类移动到新的线程中执行。 客户端 客户端UI 客户端主窗口头文件: #ifndef SENDFILEWINDOW_H #define SENDFILEWINDOW_H #include <QMainWindow> #include <QThread> namespace Ui { class SendFileWindow; } class SendFileWindow : public QMainWindow { Q_OBJECT public: explicit SendFileWindow(QWidget *parent = nullptr); ~SendFileWindow(); private slots: //连接服务器 void on_connectBtn_clicked(); //选择文件 void on_SelectFilelBtn_clicked(); //发送文件 void...
C++ Qt开发:TreeWidget 树形选择组件
Qt 是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍TreeWidget树形选择组件的常用方法及灵活运用。 QTreeWidget 是 Qt 中的树形控件组件,用于显示树形结构的数据。它继承自 QTreeView 和 QTreeWidget,提供了一个方便的方式来展示和编辑包含层次结构数据的项目。 以下是 QTreeWidget 类的一些常用方法,说明和概述: 方法 描述 addTopLevelItem(QTreeWidgetItem *item) 向树中添加一个顶级项目。 addTopLevelItems(const QList<QTreeWidgetItem *> &items) 向树中添加多个顶级项目。 clear() 清除树中的所有项目。 currentItem() 返回当前选择的项目。 currentIndex() 返回当前选择的项目的模型索引。 editItem(QTreeWidgetItem *item, int column)...
Qt地铁智慧换乘系统浅学( 一 )存储站点,线路信息
定义所需要的容器 extern QMap<QString,node> Station; extern QMap<QString,QList<QString> > edge; extern QMap<QString,QSet<QString> > Station_Line; extern QMap<QString,QColor> LineColor; extern QMap<QString,QMap<QString,int> >dp; extern QMap<QString,QMap<QString,QSet<QString> > >mp; 定义最大最小经纬度 extern double minLongi; extern double minLati; extern double maxLongi; extern double maxLati; 统计站点信息 在经纬度网站 统计如下 读取统计的信息存储到容器 void infoinit(){ QFile file(":/src/lineQD.txt"); file.open(QIODevice::ReadOnly);...
QT超市管理系统_北方以南ccc的博客-CSDN博客
前言 写在前面: 小型超市管理系统需要有用户登录界面,登录之后需要有商品列表,需要有付款界面。 我们在此项目中用的QT+Mysql,用户名和密码需要读者自行参考代码.项目名为Supermaket.
上位机UI界面设计项目_上位机控制界面_code_shenbing的博客-CSDN博客
目录 登录页面效果: 主页实现效果:点击左边的菜单栏可以切换右边的页面,实现多功能轮流显示效果。 有一个用户名输入框,可以输入任意字符; 有一个密码输入框,可以输入任意字符,但是需要以 *代替文本显示,避免密码泄露; 有一个登录按钮,当点击登录按钮时,到数据库检验用户名与密码的正确性,如果用户名密码验证正确,则跳转到程序主操作页面,否则提示用户检验用户名或密码是否正确。 海康摄像头视频预览、下载功能; 日志解析功能; 设备感应器信号实时查看功能; 发送指令操作设备硬件的功能; 代码总共有七个类,功能分别如下: 各个类含义解释 类名称类含义 main.cpp 程序入口类,一般创建工程时自动创建,暂未做相关代码修改; mainwindow.cpp mainwindow.h 登录页面类,主要实现软件的登录功能,包括用户名、密码的校验; databaseclass.h databaseclass.cpp 数据库操作类,此项目使用的是的Qt自带sqlite嵌入式数据库; controller.h controller.cpp 程序主控制类,控制功能页面的跳转、增加、删除;...
QT读写Sqlite数据库三种方式_qtsql_蚂蚁取经的博客-CSDN博客
QT对一些基本的数据库的访问封装,可谓是极大的方便的我们开发人员,现在我们就来说下QT对Sqlite这个数据库的读写,Sqlite是一个比较小型的本地数据库,对于保存一些软件配置参数或量不是很大的数据是相当的方便,Qt本身已经自带了Sqlite的驱动,直接使用相关的类库即可,这篇我们主要来说明QT访问Sqlite数据库的三种方式(即使用三种类库去访问),分别为QSqlQuery、QSqlQueryModel、QSqlTableModel,对于这三种类库,可看为一个比一个上层,也就是封装的更厉害,甚至第三种QSqlTableModel,根本就不需要开发者懂SQL语言,也能操作Sqlite数据库。 1、首先使用QSqlQuery来访问 我们先要在工程中包含与数据库相关的几个头文件#include <QtSql/QSqlDatabase> 、#include <QtSql/QSqlRecord>、#include <QtSql/QSqlQuery> 访问的数据库内容结构为: #include <QtWidgets/QApplication> #include...
Qt 操作SQLite数据库_qt sqlite插入数据_Qt开发老杰的博客-CSDN博客
Sqlite 数据库作为 Qt 项目开发中经常使用的一个轻量级的数据库,可以说是兼容性相对比较好的数据库之一(Sqlite就像Qt的亲儿子,如同微软兼容Access数据库一样)。Qt5 以上版本可以直接使用(Qt自带驱动),是一个轻量级的数据库,概况起来具有以下优点: SQLite 的设计目的是嵌入式 SQL 数据库引擎,它基于纯C语言代码,已经应用于非常广泛的领域内。 SQLite 在需要长时间存储时可以直接读取硬盘上的数据文件(.db),在无须长时间存储时也可以将整个数据库置于内存中,两者均不需要额外的服务器端进程,即 SQLite 是无须独立运行的数据库引擎。 源代码开源,你可以用于任何用途,包括出售它。 零配置 – 无需安装和管理配置。 不需要配置,不需要安装,也不需要管理员。 同一个数据文件可以在不同机器上使用,可以在不同字节序的机器间自由共享。 支持多种开发语言,C, C++, PHP, Perl, Java, C#,Python, Ruby等。 1、引入SQL模块 在Qt项目文件(.pro文件)中,加入SQL模块: QT += sql 2、引用头文件...
Qt中实时更新UI程序示例_qt 更新界面_十年编程老舅的博客-CSDN博客
Qt在运行时会开启一个主线程,如果没有开启工作线程的话,所有界面上的操作都是在主线程,包括更新界面或者处理数据等操作。我们都知道如果处理数据比较多的话,最好是在单独开启一个线程来处理数据,这样就不会影响主线程的运行。 Windows系统:Windows10 Qt版本:Qt5.15或者Qt6 QT中不建议工作线程中更新界面。 workthread.h #ifndef WORKTHREAD_H #define WORKTHREAD_H #include <QThread> class MainWindow; class QLabel; class WorkThread : public QThread { Q_OBJECT public: WorkThread(QObject *parent); ~WorkThread(); void setObject(MainWindow *obj); void setLabel(QLabel *l); void stop(); protected: void run(); private: MainWindow *mainObject =...
【QT开发笔记-基础篇】| 第二章 常用控件 | 2.12 表格控件 QTableWidget
【QT开发笔记-基础篇】| 第二章 常用控件 | 2.12 表格控件 QTableWidget(1) QTableWidget 是 Qt 中的表格控件,可以行列的形式来展示数据 QTableWidget 有很多属性和方法,完整的可查看帮助文档。 在窗口上放置一个 QTableWidget 控件后,既可以在设计师 UI 界面来编辑属性和添加数据,也可以在代码中动态地设置 这里列出常用的属性和方法 1.1 行列数目、行表头、列表头 表格控件的第一行称为行表头,用于设置每一列的标题 表格控件的第一列称为列表头,用于设置每一行的标题,通常缺省则默认显示行号 设置和获取行列的数目 int rowCount() const void setRowCount(int rows) int columnCount() const void setColumnCount(int columns) 设置行列表头 void setHorizontalHeaderLabels(const QStringList &labels) void setVerticalHeaderLabels(const...
Qt实现简易聊天室_qt制作聊天界面_优秀的键盘手的博客-CSDN博客
目录 群成员展示界面( denglu) #ifndef DENGLU_H #define DENGLU_H #include <QWidget> namespace Ui { class denglu; } class denglu : public QWidget { Q_OBJECT public: explicit denglu(QWidget *parent = nullptr); ~denglu(); private: Ui::denglu *ui; QVector<bool> IsShow; }; #endif // DENGLU_H #ifndef WIDGET_H #define WIDGET_H #include <QWidget> #include<QUdpSocket> namespace Ui { class Widget; } class Widget : public QWidget { Q_OBJECT public: explicit Widget(QWidget *parent,QString name); //重写关闭事件 void...
一文教你Qt如何操作SQLite数据库_C 语言_脚本之家
项目中通常需要采用各种数据库(如 Qracle、SQL Server、MySQL等)来实现对数据的存储、查询等功能。下面讲解如何在 Qt 中操作 SQlite 数据库。 1、SQLite 介绍 Sqlite 数据库作为 Qt 项目开发中经常使用的一个轻量级的数据库,可以说是兼容性相对比较好的数据库之一(Sqlite就像Qt的亲儿子,如同微软兼容Access数据库一样)。Qt5 以上版本可以直接使用(Qt自带驱动),是一个轻量级的数据库,概况起来具有以下优点: SQLite 的设计目的是嵌入式 SQL 数据库引擎,它基于纯C语言代码,已经应用于非常广泛的领域内。 SQLite 在需要长时间存储时可以直接读取硬盘上的数据文件(.db),在无须长时间存储时也可以将整个数据库置于内存中,两者均不需要额外的服务器端进程,即 SQLite 是无须独立运行的数据库引擎。 源代码开源,你可以用于任何用途,包括出售它。 零配置 – 无需安装和管理配置。 不需要配置,不需要安装,也不需要管理员。 同一个数据文件可以在不同机器上使用,可以在不同字节序的机器间自由共享。 支持多种开发语言,C, C++,...
Qt 魔塔小游戏_qt游戏_十二号少年的博客-CSDN博客
魔塔小游戏 思路构建 刚学习了qt,所以想写一点小时候玩的游戏,魔塔游戏简单,正合适新手练习。在我们写项目之前,就需要先构思如何写,就相当于写作文,一样的意思,现有准备工作,才可以有条不紊的写代码,而且写出来方便查看。 1、魔塔是一个2D游戏,只有一个地图,任务在其中行走,所以我们可以选择使用数组来表示地图,使用QLabel 来显示图片,这样地图就做好了。 2、定义英雄类,其中有英雄的人物信息。 3、定义怪物类,其中有怪物的信息,不同的怪物设置一个属性来区分。 4、实现按键事件,控制人物行走,人物行走,其实就是展示人物的label进行移动 5、分析人物遇见不同情况而不同的处理 6、写人物战斗算法,计算经验,血量等等属性 7、人物移动,收取物品,击杀怪物,实时显示 代码实现 定义地图 魔塔共50层,每一层是一个平面,就相当于我们的X,Y坐标系。所以可以定义一个三维数组,来存储不同楼层的排布。 int Map::map[50][13][13] = { { {0,0,0,0,0,0,0,0,0,0,0,0,0}, {0,16,1,9,8,9,1,1,1,1,1,1,0},...
Show More
loading
Actions
Is this you?
As a journalist, you can create a free Muck Rack account to customize your profile, list your contact preferences, and upload a portfolio of your best work.Get in touch with QString
Contact QString, search articles and posts on X, monitor coverage, and track replies from one place.
Learn more about Muck Rack