项目需要将一个外部软件嵌入自己编写的qt界面,类似于将外部程序当作自己软件的一个插件,以起到集成的目的。笔者这里用电脑自带的计算器为例。传统做法: 1)首先打开需要的外部程序; 2)通过spy+获取的外部程序类名; 3)将类名当作函数FindWindow的第一个参数(字符串); 代码://创建进程
QString cmd="C:/Windows/system32/calc.ex
转载
2024-02-27 10:09:29
169阅读
注意事项1:在查询数据库的时候,如果表头是中文的,需要在查询数据库的代码源文件开头添加 ...
转载
2021-07-18 17:12:00
75阅读
2评论
1. 基础类型因为Qt是一个C++框架, 因此C++中所有的语法和数据类型在Qt中都是被支持的, 但是Qt中也定义了一些属于自己的数据类型, 下边给大家介绍一下这些基础的数类型。QT基本数据类型定义在#include <QtGlobal> 中,QT基本数据类型有:类型名称注释备注qint8signed char有符号8位数据qint16signed short16位数据类型qint32
导读:Qt当中使用QFile类对文件进行读写操作,对文本文件也可以与QTextStream一起使用,这样读写操作会更加简便。QFileInfo可以用来获取文件的信息。QDir可以用于对文件夹进行操作。本文字数:1000,阅读时长大约:10分钟一、文件读操作(1)使用QFile类Qt封装了QFile类,方便我们对文件进行操作,可以按照如下的步骤进行:使用QFile加载文件对象打开文件 file.o
Qt问题集锦:编译运行后界面不更新问题描述问题分析问题解决方法一:替换源码目录的ui_mainwindow.h文件方法二:根治法,修改.pro路径,指向更新文件 问题描述在使用Qt进行界面设计时,我们经常要修改界面,但有时会莫名其妙的遇到明明修改了界面,运行后界面不更新的问题。初学者遇到这类问题时,往往不知所措,百度也不太容易找到解决办法,通常是重新构建、Debug和Release切换、qmak
上一节我们完成了搜索框基本的界面,但是光有外表是没用的,华而不实最终将会遭人唾弃。那我们还差哪些功能?1.搜索按钮可以做成填了内容才启用,这样用户体验会好一点。2.用tr实现国际化,我们用中文作为例子。3.真正地实现文本查找。针对上面的需求我们相应地给出解决方案:1.1 可以在初始化的时候先把搜索按钮禁用,用setEnabled(false)来实现。1.2 当用户在搜索框输入了内容的时候,搜索按钮
转载
2024-04-24 11:11:44
311阅读
我们在新建一个Qt GUI项目时,main函数里会生成类似下面的代码:int main(int argc, char *argv[])
{
QApplication application(argc, argv);
CQDialog dialog(NULL);
dialog.show();
return application.exec();
}对应的步骤解释如下1.构建QApplicat
近期在解析ts流文件时发现数据量太大,如果在主线程处理会造成界面卡顿,所以需要在QT中加入多线程完成解析数据工作。 通常QT内加入多线程有三种比较方便的方式: *****************************分割线------------------------------------1.moveToThread新建一个继承QObject a,然后将耗时的工作函数void dowork(
Qt学习(10)—Qt帮助文档 之前讲过一些 Qt 的简单知识,比如 qSleep 函数是 Qt 单元测试的函数,并且在名字空间 QTest 里,不仅需要包含头文件,还需要在 pro 文件里加一个 Qt 模块 testlib。那这些知识从来学来的呢?这就是 Qt 帮助文档的用途了。Qt 帮助文档
转载
2024-04-09 19:51:27
401阅读
线程①、就绪状态 : 线程一旦被new Thread 创建之后,就会立刻进入(RUnnable)就绪状态,因为CPU资源十分宝贵,所以需要等待CPU资源。②、运行状态: 当该线程枪战到CPU资源后,就会立刻进入执行状态③、阻塞状态 如果遇到sleep()或者IO阻塞,则会进入阻塞状态,当sleep()时间到了或者IO阻塞返回获得同步锁,则再次进入就绪状态 sleep():使得线程在指定的时间内进入
文章目录[隐藏] Qt sqlite 外键写入前言Qt sqlite 外键写入关键词Qt sqlite 外键写入例子(开启事务写入)Qt sqlite 语句执行Qt sqlite 语句执行结果展示 Qt sqlite 外键写入前言最近在学习 sqlite 数据库相关的知识,遇到的问题是:我有一张表例如用户表,其中字段有(id, 用户名,密码,权限),由于其中权限不定,我想做成可拓展的,...
原创
2021-07-07 10:19:28
655阅读
在Qt4中实现屏蔽粘贴功能有好几种方法,其中最简单的一种就是把控件属性设为叫读 setReadOnly(true),但是这样就不能在控件中输入了。我现在想实现的目标是允许用户手动输入文本,但是不允许用户粘贴文本到控件中。以QLineEdit为例,默认情况下Qt4提供了3种文本粘贴方式,1. Ctrl+V2. 鼠标中键3. 鼠标右键弹出“上下文菜单”,从中选择粘贴功能其中屏蔽第3种方式最简单,设置控
百度网盘体验地址:
链接:https://pan.baidu.com/s/1-be0tDJokpZeqhMEuHQntA
提取码:4d1w注:UI窗体风格参考软件:爱莫流程图效果图 1、动态演示效果:2、静态展示图片: 前文BUG维护序号问题1维护删除按钮未跟随文本宽度变化的问题2删除节点可能奔溃:删除节点时,没有从父节点属性中移除与被删除节点的连线3鼠标未双击进入编辑时,任然可以输入文本的问题
database.h
1 #ifndef DATABASE_H
2 #define DATABASE_H
3
4 #include <QTextCodec>
5 #include <QSqlDatabase>
6 #include <QSqlQuery>
7 #include <QTime>
8 #include <QSql
转载
2021-02-03 15:18:00
178阅读
2评论
C语言中表达数据的基本类型时,用基本数据类型描述,例如整型,字符型,浮点型。在表达数据的复杂结构时,使用了构造数据类型这样的特殊类型描述,例如数组,结构体,共用体。数组是最常用的构造类型,也是最简单的构造类型。今天我们讲数组的赋值,也就是怎么存储数据到数组中,来,我们看下怎么盘数组。 讲数组的赋值前,我们先来普及区分一组定义:数组声明、数组初始化、数组赋值。数组声明:就是为数组将要申请的内存空间
转载
2024-05-07 23:43:23
314阅读
涉及到数据库,首先安利一个软件Navicat Premium,用来查询数据库很方便 QMysql驱动是Qt SQL模块使用的插件,用于与MySQL数据库进行通信。要编译QMysql驱动,您需要满足以下条件:您需要安装MySQL的客户端库和开发头文件,这些文件通常随MySQL的安装程序一起提供,或者可以从MySQL官网下载。请注意,您需要根据您的Qt架构(32位或64位)选择正确的数据库库
写这几片博文,是自己对Qt线程使用的一些总结。会尽量写的详细,如果只是学习Qt线程的基本使用可以,参考转载的那篇《Qt线程基础》。Qt线程的几种使用形式:QThreadQThreadPool+QRunnableQtConcurrent一些常用替换线程的方案: 1)如果需要对每个发来的信号都做出处理,那么有两种
转载
2024-08-15 14:16:29
216阅读
查询MySQL所有存在的外键
select constraint_name,table_schema,table_name,column_name,referenced_table_name,referenced_column_name from information_schema.key_column_usage
where referenced_table_schema='qianyi'
原创
2023-12-18 10:28:57
0阅读
目录外键的使用和必要性join的使用区分(natural,cross,inner,outer)外键的使用和必要性1. 外键字段和主键字段的名称可以不同,但是类型应该一致。2. 外键的必要性:不用外键约束,也可以进行关联查询,但是有了它,MySQL 系统才会保护你的数据,避免出现误删的情况,从而提高系统整体的可靠性。为什么在 MySQL 里,没有外键约束也可以进行关联查询呢?原因是外键约束是有成本的
转载
2023-11-09 16:53:40
117阅读
一:首先是外键的定义 如果一个字段X在一张表(表一)中是主关键字,而在另外一张表(表二)中不是主关键字,则字段X称为表二的外键;换句话说如果关系模式R1中的某属性集不是自己的主键,而是关系模式R2的主键,则该属性集称为是关系模式R1的外键。二:主键表和外键表的理解(1)以公共关键字作主键的表为主键表(父表,主表)(2)以公共关
转载
2024-07-26 14:23:59
87阅读