QT
NcepuKZH
n年的一路向北
展开
-
qt 生成PDF文件
从固定url下载pdf文件,并进行显示pro文件中增加--第一步 demo生成pdf文件原创 2022-12-03 18:34:38 · 1296 阅读 · 1 评论 -
qwidget中增加快捷键
页面窗体快捷键操作原创 2022-12-03 18:30:17 · 476 阅读 · 0 评论 -
redis 另外一种集群方式
redis环境搭建转载 2022-08-26 09:42:23 · 179 阅读 · 0 评论 -
qt缺少opengl
Qt 默认在 /usr/lib/ 目录下查找动态链接库,但是很多 Linux 发行版将 OpenGL 链接库放在其它目录,例如我使用的是 CentOS 7,OpenGL 链接库位于 /usr/lib64/ 目录,而对于 Ubuntu,OpenGL 链接库位于 /usr/lib/i386-linux-gnu/mesa/ 目录。只要我们把 libGL.so 拷贝到 /usr/lib/ 目录,或者在 /usr/lib/ 目录下为 libGL.so 创建一个链接,就能解决问题。显然第二种办法更好...原创 2022-04-26 20:21:39 · 1338 阅读 · 0 评论 -
适配中标麒麟 v5
①安装 gmp cd ../gmp-6.0.0./configure --prefix=/usr/local/gmpmake && make install②安装 mpfrcd ../mpfr-3.1.1./configure --prefix=/usr/local/mpfr --with-gmp=/usr/local/gmp/make && make install③安装 mpccd ../mpc-1.0.1./configure --prefix原创 2022-04-25 20:38:06 · 1614 阅读 · 0 评论 -
kylin linux 安装RPC 框架Thrift
各种踩坑,终于解决1、由于本机使用的QT5.12.5,kylin 本机自带的QT4需要先屏蔽2、查看qmake版本qmake --version3、修改qt的配置文件cd /usr/lib/x86_64-linux-gnu/qt-default/qtchoosersudo gedit default.conf4、安装thrift各种依赖,编译安装工具,不再一一介绍大概就是不过发现需要安装编译工具 lex, yacc,boost libevent openssl等等,其中libevent原创 2021-09-14 15:57:34 · 410 阅读 · 0 评论 -
C++ hashmap实现(Key, Value为string类型)
#include <QCoreApplication>#include <stdio.h>#include <string.h>#include <iostream>using namespace std;class HashNode{public: string mKey; string mValue; HashNode *next; HashNode(string key, string value){转载 2021-09-13 17:18:50 · 702 阅读 · 0 评论 -
if判断语句
needLen = 6 - bufferLen < 0 ? 0 : 6 - bufferLen;原创 2021-08-17 10:29:46 · 212 阅读 · 0 评论 -
数据库的表数据增加或者删除一行 行序号自动更新
删除一条记录update data set id=id-1 where id>currentCount;data是表名,currentCount是你删的记录ID增加一条记录update data set id=id+1 where id>currentCount;原创 2021-08-12 17:39:03 · 2092 阅读 · 0 评论 -
pugixml 解析xml 并生成文件
三方库文件包括这三个文件,需要添加到所用的项目中#include <src/pugiconfig.hpp>#include <src/pugixml.hpp>#include <iostream>static const char* kFileName = "students2.xml";struct Student { int id; std::string name; int age; Student(int id_, const st.原创 2021-07-24 11:21:57 · 740 阅读 · 0 评论 -
qt5-cn
1、:~/Qt5.11.2/Tools/QtCreator/lib/Qt/plugins/platforminputcontexts2、:~/Qt5.11.2/5.11.2/gcc_64/plugins/platforminputcontexts原创 2021-07-21 11:34:11 · 196 阅读 · 0 评论 -
函数输出两个值中的最大值
inline int Max(int x, int y){ return (x > y)? x : y;}原创 2021-07-20 20:10:35 · 376 阅读 · 0 评论 -
QTableWidget--鼠标悬浮显示单元格内容
解决单元格内容过多占用过多像素问题:鼠标悬浮#includevoid MainWindow::slot_Tooltip(QModelIndex index){ QToolTip::showText(QCursor::pos(),index.data().toString()); return ;} m_pAbnormalTable->setMouseTracking(true);//设置鼠标追踪 connect(m_pAbnormalTable,SIGNAL(原创 2021-07-09 10:24:44 · 2048 阅读 · 2 评论 -
QTreeView 设置表头 主要从model取数 而不是直接设置
QStandardItemModel *m = new QStandardItemModel(this); m_qtreeView->setModel(m); m->setHorizontalHeaderLabels(QStringList()<<QStringLiteral("控制系统"));//设置表头原创 2021-07-08 15:17:44 · 1481 阅读 · 0 评论 -
QT-QMainWindow布局设置
ui->setupUi(this); // 设置layout布满窗口,假设layout名称是m_horizontalLayoutui.centralWidget->setLayout(ui.m_horizontalLayout);转载 2021-07-07 11:04:35 · 357 阅读 · 0 评论 -
QTableview 鼠标悬浮 提示内容信息
QStandardItem *item = new QStandardItem("show_content");/*setItem设置条目栏中的一个格子的信息*/model->setItem(0, 0, item);item->setData("1234567890",Qt::ToolTipRole);原创 2021-07-06 10:41:17 · 1752 阅读 · 0 评论 -
QMdiSubWindow 多页面
原创 2021-07-05 20:06:54 · 274 阅读 · 0 评论 -
QT json文件的写和读
1、写json文件需要引用#include <QJsonDocument>#include <QJsonObject>#include <QByteArray>#include <QJsonArray>#include <QFile>#include <QDebug>void createObject(QJsonObject &obj, QString version, QString path){原创 2021-07-01 11:00:50 · 786 阅读 · 0 评论 -
MySql8 的安装
主要分为:1、解压到指定目录F:\App\mysql-8.0.25-winx642、增加my.ini配置文件[mysqld]# 设置3306端口port=3306# 设置mysql的安装目录basedir=F:\\App\\mysql-8.0.25-winx64 # 切记此处一定要用双斜杠\\,单斜杠我这里会出错,不过看别人的教程,有的是单斜杠。自己尝试吧# 设置mysql数据库的数据的存放目录datadir=F:\\App\\mysql-8.0.25-winx64\\Data原创 2021-06-29 20:06:23 · 186 阅读 · 1 评论 -
设计模式的六大原则
原创 2021-05-31 19:03:58 · 128 阅读 · 0 评论 -
数据库事务 减少对文件的频繁IO操作
QSqlDatabase db_sqlite = QSqlDatabase::addDatabase(“QSQLITE”, “connSQLite”);db_sqlite.setDatabaseName(“SQLiteDB.db3”);db_sqlite.open();QSqlQuery query("", db_sqlite);bool bsuccess = false;QTime tmpTime;// 开始启动事务db_sqlite.transaction();tm原创 2021-05-31 10:54:20 · 486 阅读 · 0 评论 -
Qt 自定义数据类型 结构体 信号槽传送等需要使用
.自定义数据类型因为自定义数据类型是系统中不存在的,即使创建,也需要注册一下,方便编译器识别struct myStruct //自定义的数据类型{ int age; char name[10];};Q_DECLARE_METATYPE(myStruct) //注册,必不可少...原创 2021-03-05 21:38:46 · 250 阅读 · 0 评论 -
字符串补齐三3位
如题:比如1,我想转成 “001”。有两种方法:方法一:int i=1;QString b=QString("%1").arg(i, 3, 10, QChar(‘0’));其中3表示需要保留3位数字,10是10进制,后面是以0补齐的意思。方法二:int cmd=1;QString str=QString::number(cmd).sprintf("%03d",cmd);...转载 2021-03-03 21:27:45 · 922 阅读 · 2 评论 -
Qt 改变布局的页面边距
qt 的布局默认给的页面布局是 5,需要在程序实现的地方更改一下,初始化的值为0layout->setContentsMargins(0, 0, 0, 0);原创 2021-03-02 10:19:11 · 943 阅读 · 0 评论 -
命令行更改ubuntu 时间日期
在项目中需要对服务器(无显示器)进行操作,由于VNC客户端不能对远程电脑的时间日期进行修改,而它有影响程序的编译(来自其他主机的拷贝程序)sudo date -s 2021-02-24sudo date -s 20:28原创 2021-02-24 20:31:40 · 498 阅读 · 0 评论 -
QAxWidget主要是可以调用windows程序的API接口
QAxWidget主要是可以调用windows程序的API接口,例如我要用到WordWord接口的网址:https://msdn.microsoft.com/en-us/library/aa272160(v=office.11).aspxQAxWidget *w = new QAxWidget(“Word.Application”);w->setControl(“C:\Desktop\hh.docx”);...转载 2021-02-21 20:41:08 · 553 阅读 · 0 评论 -
未知变化位数的数字 保留小数点后的固定位数
QString str = "1.34";QString strNew = str.number(str.toDouble(),'f',3 );//保留小数点后固定的3位数字 非科学计数法 'g'原创 2021-02-21 16:57:14 · 169 阅读 · 0 评论 -
C++中的union联合体
union允许多种不同类型的数据共享同一块内存区域,并根据实际内存字节来获取指定类型的数据//以UData为例,其长度就是st的长度,如果我们给st赋了值,那么st的第一个字节存放x,第二个字节存放y,第三个字节存放z//虽然我们没有给a,b,c赋值,但是由于内存是共享的,如果我们去获取a,那么就会将u的第一个字节作为整型数据返回,实际就是x的值//如果我们去获取d,那么就以u的前两个字节作为整型数据返回,即x和y的联合字节数据作为d//由于int的数据长度是和机器有关的,为了方便观察数值,这里故意原创 2021-01-14 17:25:22 · 322 阅读 · 0 评论 -
git 并行同步提交代码 解决冲突
一个项目工程 多人同时更新代码 不可避免地会有冲突:git pull --rebase origin master git push origin master 当使用之前博客所总结的命令提交代码报错的时候,使用此命令进行同步缓存区的内容。当然也需要注意放弃工作区要提交的无用内容慎用 git add . 建议多个文件分批进行添加...原创 2021-01-09 10:02:50 · 395 阅读 · 0 评论 -
qt 获取设置好的环境变量
QString strPath = QProcessEnvironment::systemEnvironment.value(aaa);其中aaa 为设置的root 名称 即可调用获取当前的部分路径通过和相对路径的组合 成为一个绝对路径原创 2020-12-24 17:49:07 · 1328 阅读 · 1 评论 -
QSettings
#include <QCoreApplication>#include <QtCore/QCoreApplication>#include <QSettings>#include <QString>#include <QDebug>int main(int argc, char *argv[]){ QCoreApplication a(argc, argv);// //Qt中使用QSettings类读写ini文件//原创 2020-12-23 15:01:31 · 232 阅读 · 0 评论 -
Qt如何删除一个布局中的控件(子布局)
一开始 ,我定义的一个布局中既有控件又有布局,在删除时使用各种遍历方法都不能很好的解决,由于开发时间关系,进行了调整,将布局中控件依次拆开直接放入要重布的布局中。QLayoutItem*childwhile(( child=missionWidgetLayout->takeAt)!=0){ if(child->widget()) { child->widget()->setParent(NULL); } delete child;}上边方法是测试通过的踩坑原创 2020-12-23 10:32:48 · 3276 阅读 · 1 评论 -
ubuntu qt 工程编译QMAKE_POST_LINK 或 QMAKE_PRE_LINK
QMAKE_PRE_LINK/QMAKE_POST_LINK=copy -f filePath1 filePath2请注意 filePath1 filePath2 使用的项目的绝对路径 需要使用$$进行获取这样就方便编译前、后 对cpp h dll so等文件的指定目录指定文件的复制粘贴同步,减少了后期运维人员的debug成本...原创 2020-12-20 16:05:12 · 608 阅读 · 0 评论 -
git history 解决git 上传库自动忽略特定文件类型的gitignore
1 git add .2 git commit -m “注释”3 git push1 vim .gitignore2 git status3 git add .gitignore4 git status5 git config core.excludesfile .gitignore6 cat .git/config7 git push origin master8 git rm -r --cached .9 git add .10 git commit原创 2020-12-20 10:54:11 · 1287 阅读 · 1 评论 -
Qt 注册自定义的数据类型
#include //注册自定义类型,使QT的信号槽支持我们的类型qRegisterMetaType(“Frame7E”);//参数无所谓,建议带上同名字符串参数1、注册位置:在第一次使用此类链接跨线程的signal/slot之前,一般在当前类的构造函数中进行注册;2、注册方法:在当前类的顶部包含:#include ,构造函数中加入代码:qRegisterMetaType(“Myclass”);3、Myclass的引用类型需单独注册:qRegisterMetaType(“Myclass&”原创 2020-12-18 15:51:41 · 847 阅读 · 3 评论 -
QMultiMap 通过key 查找value 一对多的情况
声明一个QMultiMap对象:1QMultiMap<long long , QStandardItem*> m_CompleteItemMap;//键和值的类型根据自己的需要修改2对应一个键插入多个值:m_CompleteItemMap.insert(111, pItem1);m_CompleteItemMap.insert(111, pItem2);m_CompleteItemMap.insert(111, pItem3);3查找某个键对应的所有值及值的列表:QList&原创 2020-12-18 11:41:25 · 1525 阅读 · 0 评论 -
QTableWidget 初始化 数据清空问题
一个表格初始化清空问题,纠缠了我半天的时间由于表格内容在下一次输入信息之前需要对其进行清空,故一直在查找clear函数之后的insert问题,始终不能被解决。又尝试了clearcontents只清空内容不动表头的函数也不行tablewidget->setRowCount(0) 直接进行了表格内容的初始化...原创 2020-12-18 10:14:29 · 3196 阅读 · 2 评论 -
QTableWidget 插入一条数据 demo
QTableWidget是QT程序中常用的显示数据表格的空间。QTableWidget是QTableView的子类,主要的区别是QTableView可以使用自定义的数据模型来显示内容,先通过setModel来绑定数据源。QTableWidget则只能使用标准的数据模型,使用QTableWidgetItem默认构造函数实现单元格内容。 this->setWindowTitle("Ruku"); ui->tableWidget->clear(); QString原创 2020-12-12 15:27:41 · 17921 阅读 · 1 评论 -
C++中的list 和 vector
stl提供了三个最基本的容器:vector,list,deque。vector和built-in数组类似,它拥有一段连续的内存空间,并且起始地址不变,因此它能非常好的支持随即存取,即 []操作符,但由于它的内存空间是连续的,所以在中间进行插入和删除会造成内存块的拷贝,另外,当该数组后的内存空间不够时,需要重新申请一块足够大的内存并进行内存的拷贝。这些都大大影响了vector的效率。list就是数据结构中的双向链表(根据sgi stl源代码),因此它的内存空间可以是不连续的,通过指针来进行数据的访问,这个转载 2020-12-12 14:37:16 · 565 阅读 · 0 评论 -
QMap 使用自定义结构体作为key
#include <QMap>#include <QDebug>struct Test{ QString x; QString y;// int x;// int y; bool operator < (const Test &o) const {// return x < o.x || y < o.y; if (this->x.compare(o.x) &l.原创 2020-12-12 11:48:45 · 2909 阅读 · 0 评论