QT知识
QT知识学习
Hello,小高同学
Hello,小高同学,一名耐心的码农
展开
-
CyAPI使用(1)开发环境搭建 {VS、QT}
1 编译过程中所遇到的报错(以下演示QT环境)1.1 各种标识符或者说明符未声明解决方法:在包含CyAPI.h之前#include <windows.h>1.2 链接不到库文件、无法解析的外部命令在引用CyAPI.h 之前,链接SetupAPI.lib、user32.lib、legacy_stdio_definitions.lib这三个库文件#pragma comment (lib,"user32.lib")//不能删除,否则出现链接库连接不上#prag.原创 2022-04-22 14:29:04 · 986 阅读 · 0 评论 -
QT Creator代码没有报错提示、不报红
解决方案:打开QT Creator,点击帮助,点击关于插件。在已安装插件里,在C++ 下有个 ClangCodeModel插件,将其勾选上,然后重启QT Creator。转载 2021-11-29 15:46:53 · 931 阅读 · 0 评论 -
QT网络模块QEventLoop
问题描述:http通信中,采用code1阻塞通信,等待通信返回数据,发现在一些密集型耗时操作(滑块处理事件)处理不及时,导致滑动停止后还在处理,但是采用code2并不这样// code 1 QEventLoop eventLoop; connect(reply, SIGNAL(finished()), &eventLoop, SLOT(quit())); eventLoop.exec(QEventLoop::ExcludeUserInputEvents);.原创 2021-11-26 14:15:47 · 869 阅读 · 0 评论 -
从std :: string到QByteArray的无损转换
// std::string => QByteArrayQByteArray byteArray(stdString.c_str(), stdString.length());// QByteArray => std::stringstd::string stdString(byteArray.constData(), byteArray.length());从Qt 5.4开始,通过和QByteArray建立了对std::string转换的支持。inline std::s...转载 2021-11-25 21:58:44 · 2907 阅读 · 1 评论 -
QT中QString与string的转化,解决中文乱码问题
QString str2qstr(const string str){ return QString::fromLocal8Bit(str.data());} string qstr2str(const QString qstr){ QByteArray cdata = qstr.toLocal8Bit(); return string(cdata);}在需要使用中文QString时,先用string写一个,然后转过去就可以啦,例如:qlabel->setText(QSt.转载 2021-11-24 21:24:23 · 2644 阅读 · 0 评论 -
vs2017---vs2010 如何编译和使用libcurl库
https://blog.csdn.net/DaSo_CSDN/article/details/77587916https://blog.csdn.net/cym1990/article/details/79851039转载 2021-11-19 14:42:47 · 301 阅读 · 0 评论 -
QtSingleApplication 使用总结
在工作中遇到程序只允许运行一次,若程序已运行,则不会重复运行,并且在对应的参函数做处理。因此使用到了 qtsingleapplication 解决方案,下面是我使用的一些总结。步骤一:下载 qtsingleapplication 源码,源码地址 。步骤二:在 Qt 工程项目中添加 qtsingleapplication 源码include (./qtsingleapplication/qtsingleapplication.pri)步骤三:在 main.cpp 中使用。#includ转载 2021-11-16 20:10:39 · 1506 阅读 · 0 评论 -
QT 读取文件中文乱码解决方案(代码)
编码问题回顾和总结:GB2312 :是对 ASCII 的中文扩展。兼容ASCII;GBK: 包括了 GB2312 的所有内容,同时又增加了近20000个新的汉字(包括繁体字)和符号;GB18030:在GBK基础上加入少数民族的几千个新字,扩展成GB18030;Unicode:所有的字符被一视同仁,汉字不再使用“两个扩展ASCII”,而是使用“1个Unicode”,注意,现在的汉字是“一个字符”了,于是,拆字、统计字数这些问题也就自然而然的解决了。但是,这个世界不是理想的,不可能在一夜之间所有的系统.转载 2021-11-06 08:50:36 · 3525 阅读 · 0 评论 -
QT中QString与string的转化,解决中文乱码问题
QString str2qstr(const string str) { return QString::fromLocal8Bit(str.data()); } string qstr2str(const QString qstr) { QByteArray cdata = qstr.toLocal8Bit(); return string(cdata); } 在需要使用中文QString时,先用string写一个,然后转过去就可以啦.转载 2021-05-13 11:55:46 · 793 阅读 · 0 评论 -
禁用QSpinBox,QComboBox,QDoubleSpinBox的滚轮事件响应(QT)
//禁止滚轮事件//只用这两行代码就可以禁用某个控件滚轮事件,不需要声明,直接写在cpp中;void QComboBox::wheelEvent(QWheelEvent *e){}//禁止滚轮事件//只用这两行代码就可以禁用某个控件滚轮事件,不需要声明,直接写在cpp中;void QDateTimeEdit::wheelEvent(QWheelEvent *e){}//禁止滚轮事件//只用这两行代码就可以禁用某个控件滚轮事件,不需要声明,直接写在cpp中;void QAbstr.转载 2021-04-29 10:27:58 · 2348 阅读 · 0 评论 -
下载DCMTK库、VS2017配置DCMTK库、使用DCMTK库
1、VS2017项目->属性->2、VC++目录->包含目录填DCMTK库的include目录(F:\DCMTK3.6.3_build\x86\debug\DCMTK\include)库目录填DCMTK库的LIB目录(F:\DCMTK3.6.3_build\x86\debug\DCMTK\lib)3、C++常规->附加包含目录(F:\DCMTK3.6.3_build\x86\debug\DCMTK\include)4、链接器->输入->附加依赖项-&g原创 2021-04-28 15:39:21 · 1420 阅读 · 0 评论 -
QT获取本机IP和MAC地址的方法(转)
https://dabaojian.blog.csdn.net/article/details/51520523转载 2020-12-29 20:49:25 · 1488 阅读 · 0 评论 -
QT 中文乱码
升级到Qt5.X之后,原先解决的Qt显示中文乱码的方法突然不适用了,找了很多方式来解决这个问题第一种:在公司代码里看到的方法,先将对应的cpp文件用windows自带的记事本打开,另存为UTF-8格式,然后在代码中,遇到中文字符,使用QStringLiteral("中文")进行修饰这种方式每次新建一个class就要切出去用记事本编辑一下实在麻烦,而且每个中文字符串都要用QStringLiteral来修饰,实在麻烦后来有找到了个方法第二种:在头文件申明中加上pragma execution_转载 2020-11-03 11:36:55 · 232 阅读 · 0 评论 -
Qt IP、端口、密码格式输入限制
QRegExp rx("^((2[0-4]\\d|25[0-5]|[01]?\\d\\d?)\\.){3}(2[0-4]\\d|25[0-5]|[01]?\\d\\d?)$");//IP正则表达式QRegExpValidator *m_IPValidator = new QRegExpValidator(rx,this);ui.EditIP->setValidator(m_IPValidator);//设置IP的输入规则QRegExp regx("[0-9]+$");QRegEx.转载 2020-09-18 14:09:29 · 977 阅读 · 0 评论 -
给窗口/控件画外边框 QPainter
void ComWidget::paintEvent(QPaintEvent *e){QPainter painter(this);QPen pen;pen.setColor(Qt::darkGray);pen.setWidth(2);painter.setPen(pen);painter.drawRect(this->rect());painter.end();}默认画...转载 2020-04-24 11:20:00 · 1369 阅读 · 0 评论 -
Qt开发中触发鼠标悬停事件
比如我有一个tableWidget,需要在鼠标悬停时,显示一些信息或者打印一些信息,可如下操作:ui->tableWidget->setAttribute(Qt::WA_Hover,true);//开启悬停事件ui->tableWidget->installEventFilter(this); //安装事件过滤器//事件过滤器bool FormSim...转载 2020-04-16 09:57:18 · 4769 阅读 · 0 评论 -
Qt5(msvc2017)+opencv3配置方法(编译成功,运行失败)
https://blog.csdn.net/qq_38904904/article/details/87889154转载 2020-04-08 18:00:40 · 720 阅读 · 0 评论 -
获取界面所有的xxx
QPushButton*button=parentWidget->findChild<QPushButton*>("button1");QList<QPushButton*>allPButtons=parentWidget.findChildren<QPushButton*>();原创 2020-04-03 11:27:23 · 135 阅读 · 0 评论 -
Qt 设置父控件样式不影响子控件的解决方法
方法如下,特此记录,方便使用:QLabel *backLabel = new QLabel(this); if(backLabel->objectName().isEmpty()) backLabel->setObjectName("backLabel"); backLabel->setStyleSheet("QLabel#backLabe...转载 2020-04-03 09:13:25 · 7458 阅读 · 2 评论 -
Qt 如何实现图片压缩
https://www.fearlazy.com/index.php/post/5.html转载 2020-03-30 20:32:07 · 2690 阅读 · 0 评论 -
qt 窗口无标题在桌面移动,不可移出可视范围之外
下面是基类的源代码,把所需求移动的窗口类继承这个基类即可头文件:/************************************************************************//*BaseWidget.h *//************...转载 2020-03-27 20:41:52 · 1627 阅读 · 0 评论 -
关于QtCreator窗口布局恢复不了的问题
https://blog.csdn.net/Action_Giant/article/details/55213484转载 2020-03-22 16:50:17 · 1341 阅读 · 0 评论 -
Qt: QTableView的当前行改变时的信号Qt: QTableView的当前行改变时的信号
void ShowLogDialog::showLogs(const QList<Log> &logs) {ModelBuilder::buildModel(&(this->model), logs);ui->tableView->setModel(this->model);ui->tableView->resizeCol...转载 2020-03-19 08:17:51 · 3386 阅读 · 1 评论 -
QLlistwidget 自定义item 并获取 item上的内容
https://blog.csdn.net/qingzhuyuxian/article/details/90515515转载 2020-03-17 22:31:00 · 882 阅读 · 0 评论 -
关于QListWidget自定义Item的学习
QListWidget *listWidget = new QListWidget; QWidget *widget = new QWidget; QListWidgetItem *item = new QListWidgetItem(listWidget ); listWidget->addItem(nitem); ...转载 2020-03-17 22:27:18 · 985 阅读 · 0 评论 -
使用QImage保存成JPG图像到本地
#Qt assistant中对QImage的说明注:以下说明是本人用翻译软件翻译的,部分语句还需斟酌。建议尽量查看Qt assistant中的英文原版,避免歧义。QImage类提供与硬件无关的图像表示,允许直接访问像素数据,并可用作绘图设备。Qt提供了四个用于处理图像数据的类:QImage,QPixmap,QBitmap和QPicture。 QImage专为I / O和直接像素访问和操作而...转载 2020-03-17 22:23:38 · 9389 阅读 · 1 评论 -
QListWidget实现图片缩略图形式的列表
1、代码#include<QApplication>#include<QListWidget>#include<QPixmap>#include<QIcon>#include<unistd.h>int main(int argc,char* argv[]){ QApplication app(argc,argv...转载 2020-03-04 12:11:49 · 1944 阅读 · 0 评论 -
QT编译失败,但是理论上却没有什么语法错误,莫名其妙的错误QT syntax error :missing ';' before '*'
报错如下:首先在报错语句没有语法错误,但是就是报错,为什么这样呢?以下是一种原因是因为头文件的循环包含。patientinterface.h文件 PatientInterfaceInformation *uiinformation;报错,但是这里是没有语法错误。原因:PatientInterfaceInformation类是在其他地方定义的,因此需要包含这个头文件...原创 2020-03-02 21:45:34 · 1906 阅读 · 0 评论 -
QT 边框设置
ui->lineEdit_id->setStyleSheet("border:2px groove gray;border-radius:10px;padding:2px 4px");原创 2020-03-01 16:28:40 · 3472 阅读 · 0 评论 -
QTableView
QTableView 表格视图控件QTableView,需要和QStandardItemModel, 配套使用,这套框架是基于MVC设计模式设计的,M(Model)是QStandardItemModel数据模型,不能单独显示出来。V(view)是指QTableView视图,要来显示数据模型,C(controllor)控制在Qt中被弱化,与View合并到一起。1 QTableView简...转载 2020-02-29 23:44:00 · 453 阅读 · 0 评论 -
Qt QLineEdit控件textChanged信号和textEdited信号区别
textChanged信号的意思是text内容改变时产生信号。textEdited信号的意思是text内容编辑时产生信号。textChanged信号:每当文本改变时,就会发出这个信号。文本参数是新文本。与textEdited()不同,当以编程方式更改文本时,例如,通过调用setText()也会发出此信号。textEdited信号:每当文本被编辑时,就会发出这个信号。文本...原创 2020-02-29 17:35:52 · 4258 阅读 · 0 评论 -
QString和QDateTime之间的相互转换
1、QDateTime 转换为QStringQString strBuffer; QDateTime time; time = QDateTime::currentDateTime(); strBuffer = time.toString("yyyy-MM-dd hh:mm:ss"); // strBuffer = 2018-06-06 14:05:00 ...转载 2020-02-28 10:30:07 · 1600 阅读 · 0 评论 -
QLabel添加背景图片,并且适应QLabel大小
QImage Image; Image.load("d:/test.jpg"); QPixmap pixmap = QPixmap::fromImage(Image); int with = ui->labPic->width(); int height = ui->labPic->height(); QPixmap fitp...转载 2020-02-27 16:34:12 · 9196 阅读 · 1 评论 -
QT模态对话框和非模态对话框(QDialog)
模态对话框是指在没有关闭它之前,不能再与同一个应用程序的其他窗口进行交互,比如新建项目时弹出的对话框。非模态对话框是指既可以和它交互,也可以与同一程序中的其他窗口交互,如word中查找替换对话框。类源文件mywidget.cpp代码一:#include "mywidget.h"#include "ui_mywidget.h"#include<QDialog>...原创 2019-02-28 13:06:34 · 2626 阅读 · 0 评论 -
QT——关闭时释放内存,解决父窗口关闭子窗口没关闭的情况
// 关闭时释放内存this->setAttribute(Qt::WA_DeleteOnClose);原创 2019-08-11 16:46:48 · 1803 阅读 · 0 评论 -
信号和槽
connect()函数最常用的一般形式:connect(sender, signal, receiver, slot);参数: sender:发出信号的对象 signal:发送对象发出的信号 receiver:接收信号的对象 slot:接收对象在接收到信号之后所需要调用的函数 代码:mainwidget.cpp#include "mainwidget.h"...原创 2019-08-11 22:31:32 · 226 阅读 · 1 评论 -
坐标系统
#include "mywidget.h"#include <QPushButton>#include "mybutton.h"MyWidget::MyWidget(QWidget *parent) : QWidget(parent){ resize(400,400); move(400,400); QPushButton *b1 = new ...原创 2019-08-11 22:34:29 · 352 阅读 · 0 评论 -
菜单栏、工具栏、状态栏、核心控件、浮动窗口
菜单栏:QMenuBar、QMenu、QAction工具栏:QToolBar、状态栏:QStatusBar核心控件:QTextEdit等浮动窗口:QDockWidget#include "mainwindow.h"#include <QMenuBar>#include <QDebug>#include <QMenu>#include ...原创 2019-08-11 22:37:46 · 690 阅读 · 0 评论 -
模态对话框、非模态对话框、标准对话框、文件对话框
模态对话框 :QDialog非模态对话框:QDialog标准对话框(关于对话框、问题对话框等):QMessageBox文件对话框:QFileDialog标准对话框还有QColorDialog: 选择颜色; QFileDialog: 选择文件或者目录; QFontDialog: 选择字体; QInputDialog:...原创 2019-08-11 22:41:21 · 267 阅读 · 0 评论 -
QT设计常用控件
#include "mainwindow.h"#include "ui_mainwindow.h"#include <QDebug>#include <QStringList>#include <QCompleter>#include <QMovie>MainWindow::MainWindow(QWidget *parent) :...原创 2019-09-01 23:12:54 · 516 阅读 · 0 评论