QT
包含常见的编译错误解决方案以及使用心得
你好,帅哥
这个作者很懒,什么都没留下…
展开
-
windows下的 GammaRay安装和使用教程
方法1:先在qtcreator启动应用程序,然后使用gammaray-launcher.exe附加到对应的程序上。解压后新建一个build目录为接下来的编译做准备。可用于查看运行时的程序对象状态信息以及事件队列。1.下载有cmake编译器。2.当前的qt版本带有cmake文件夹。下载对应的qt版本适配版本。原创 2024-06-21 16:04:29 · 584 阅读 · 0 评论 -
Qt xml学习之calculator-qml
帮助文档:https://www.w3.org/TR/scxml/2.使用技术:qml,scxml。1.功能说明:制作简易计算器。原创 2024-05-31 14:29:45 · 512 阅读 · 0 评论 -
QT QDomDocument创建xml文件
需求:增加xml模块。原创 2024-01-25 14:09:38 · 481 阅读 · 0 评论 -
QPushButton 设置背景颜色无效,或者出现斑点背景
按钮设置可检测属性后:qt里面默认了一种边框样式,这个边框样式会对背景颜色造成影响,需要自定义一种边框样式。QPushButton 启用了 setCheckable(true)属性。并且在qss里面使用background 来编辑背景颜色。在设置背景颜色后要对边框样式进行修改。原创 2024-03-19 15:14:50 · 842 阅读 · 0 评论 -
qt 获取编译时间,文件编译时间,单词转数字
QDate date = QLocale::c().toDate(DATE, “MMM dd yyyy”);QString buildTime = date.toString(“yyyy MM dd”) +" " + TIME;原创 2024-05-14 15:11:48 · 164 阅读 · 0 评论 -
QTabWidget 应用 QProxyStyle 自定义样式
QProxyStyle原创 2024-01-11 17:13:15 · 646 阅读 · 0 评论 -
Qt Creator :Analyze heob 使用教程
把dwarfstack动态库放在heob的执行程序目录下。第五步:默认配置下次可以直接使用。第四步:配置heob的路径。第三步:配置启动调试程序。点击链接可以直接跳转位置。原创 2023-12-06 15:45:24 · 900 阅读 · 2 评论 -
qt 析构函数发生了崩溃
引发原因:new 了一个QSpacerItem对象,在多处使用。原创 2023-12-04 14:41:46 · 253 阅读 · 0 评论 -
QT 设计透明窗口(视频上方)
头文件class MyAutoCloseFrameBase : public QFrame{ Q_OBJECTpublic: MyAutoCloseFrameBase(QWidget *parent,int keeptime = 2000);//msec ~MyAutoCloseFrameBase(); void resetAutoClock(bool isable = true); void SetLabelText(QString text);protected: bool ev原创 2021-10-28 11:05:56 · 758 阅读 · 0 评论 -
QScrollBar 动态宽度
1.由于直接设置hover样式无效,所以采用事件过滤器,判断当前滑动条状态,动态变换样式//安装过滤器scrollArea->verticalScrollBar()->installEventFilter(this);//判断状态bool eventFilter(QObject *obj, QEvent *event){ if (obj == scrollArea->verticalScrollBar()) { if (event->type() == QEven原创 2021-11-16 10:32:21 · 775 阅读 · 0 评论 -
qt 学习小总结
1.qss文件的读取不需要 头文件QFile file(“xxx.qss”);if(file.open(QFile::ReadOnly)){ QTextStream stylein(&file);QString style=stylein.ReadAll();file.close();}a.setStyleSheet(style);2.跨窗口信号send.hsignals:void sendms();send.cppemit sendms();receive.hsend.原创 2022-04-22 11:52:02 · 737 阅读 · 0 评论 -
QCombobox 在macos上样式修改
方法一:在样式设置添加QComboBox{combobox-popup:0;}这个可以去掉上下两个白色圆角部分方法二:直接设置对应控件样式,修改为windows 风格m_combobox->setStyle(QStyleFactory::create(“Windows”));原创 2022-04-08 10:08:14 · 380 阅读 · 0 评论 -
QTreewidget 问题
1.滑动条显示问题QTreewidget 的滑动条相当于在这个窗口的外边框位置设置自定义的QTreewidget 子类时,该子类大小不可以和父窗口大小一致.否则滑动条会被隐藏原创 2021-09-18 09:36:12 · 393 阅读 · 0 评论 -
QMenu 禁用/隐藏
(直接设置菜单禁用是无效的,要把菜单转换为一个控制按钮的模式来操作)QAction *QMenu::menuAction() constReturns the action associated with this menu.(返回与此菜单关联的操作)例子:m_Menu->menuAction()->setEnabled(flase);//禁用该菜单m_Menu->menuAction()->setVisible(false);//隐藏该菜单...原创 2021-12-02 17:44:38 · 4010 阅读 · 0 评论 -
QT 在 macos 上的透明bug Qt::WA_TranslucentBackground
1.在mac 上设置透明只需要setAttribute(Qt::WA_TranslucentBackground);问题:1.鼠标进入透明窗口时会闪烁 ,或者偶尔会出现重影setWindowFlags(Qt::Dialog | Qt::FramelessWindowHint);(Qt::Tool 在mac上会有问题)2.鼠标点击窗口外面时透明窗口消失,点击程序透明窗口重现显示setWindowFlags(Qt::Dialog | Qt::FramelessWindowHint);(Qt::T原创 2022-04-14 17:22:49 · 928 阅读 · 2 评论 -
QListview-QAbstractListModel-QStyledItemDelegate使用例子
#include <QStyledItemDelegate>#include <QPainter>#include <QAbstractListModel>#include <QStringList>#include <QModelIndex>#include <QLabel>class mylistModel;class mydeltgate : public QStyledItemDelegate{ Q_OBJ原创 2021-09-16 10:19:17 · 792 阅读 · 0 评论 -
qslider qss使用
说明:QSlider中有四个比较重要的辅助控制器(subcontrol)groove表示槽的部分handle表示滑块add-page表示未滑过的槽部分sub-page表示已滑过的槽部分在辅助控制器后面可以设置状态,horizontal就是QSS生效的QSlider的状态,注意这里设置的方向一定要和slider对象的方向一致,如果slider是vertical的,QSS设定的是horizontal的,那么是看不到效果的。先在qss文件定义/横向滑动条的两种样式/QSlider[STYLE_K原创 2021-06-17 19:28:39 · 775 阅读 · 0 评论 -
QT 创建编辑xml文件
//写xml的2个方式**方式一 QXmlStreamWriter**QFile file("C:/Users/Administrator/Desktop/test.xml");if (!file.open(QIODevice::WriteOnly)) return;QXmlStreamWriter stream(&file);stream.setAutoFormatting(true); //设置自动格式,自动换行和缩进stream.writeStartDocumen原创 2021-05-24 16:34:46 · 1162 阅读 · 0 评论 -
qt获取语言列表(utf8)
简体中文(八进制unicode)=\347\256\200\344\275\223\344\270\255\346\226\207QString zh = QString::fromUtf8("\347\256\200\344\275\223\344\270\255\346\226\207");http://www.mytju.com/classcode/tools/encode_utf8.asp使用该网站查出对应字符的16位unicode编码2.Unicode符号范围 | UTF-8编码方原创 2021-08-17 11:24:46 · 484 阅读 · 0 评论 -
qt 布局---表单布局
QFormLayout(表单布局)常用于管理输入型和关联标签组成的form表单类似输入密码,个人信息填写页面的布局,相对于栅格布局,这个简化了代码量使用方法:QFormLayout *formlayout = new QFormLayout;QLineEdit1 = new QLineEdit;QLineEdit2 = new QLineEdit;QLineEdit3 = new QLineEdit;formlayout->addRow("name", QLineEdit1 );f原创 2020-11-13 17:41:39 · 410 阅读 · 0 评论 -
qt双屏显示
int Index = QApplication::desktop()->screenNumber(this); //获取当前屏幕的索引 m_parent->setGeometry(QApplication::desktop()->screenGeometry(Index)); //设置app所在位置 m_parent->show();原创 2021-01-06 14:08:18 · 2321 阅读 · 0 评论 -
QTreeWidget 和样式
setColumnCount(5);setColumnWidth(0, 1*g_dscale);setColumnWidth(1, 20*g_dscale);setColumnWidth(2, 30*g_dscale);setColumnWidth(3, 122*g_dscale);setColumnWidth(4, 30*g_dscale);//设置树形有多少列,每一列的宽m_item = new QTreeWidgetItem(treewidget);//该item有五列item-&原创 2021-06-02 10:56:48 · 1965 阅读 · 0 评论 -
qt视频播放器,注意事项
1.禁用播放界面的绘画属性setAttribute(Qt::WA_PaintOnScreen, true);时要同时重写绘画引擎函数**QPaintEngine * paintEngine() const{#ifdef _MSC_VER return NULL;//win 无法实现双缓冲,所以要播放视频时禁用自带绘画引擎(否则会发生闪烁)#else return QFrame::paintEngine();#endif}**...原创 2021-08-09 10:42:50 · 280 阅读 · 0 评论 -
自定义可移动标题栏
QW::QW(QWidget* parent){}QW::~QW(){}void QW::mousePressEvent(QMouseEvent *event){ QPoint p = event->pos(); if (p.y() < 40) { m_isMoving = true; m_MousePressPont = event->globalPos(); } else{ m_isMoving = false; }}void QW::mo原创 2021-09-01 11:44:19 · 92 阅读 · 0 评论 -
QToolButton样式设置
1.取消添加菜单时出现箭头QToolButton::menu-indicator { image: none;}原创 2021-08-05 17:34:22 · 2472 阅读 · 0 评论 -
QCombobox样式
QComboBox{ background-color:rgba(46, 46, 46, 128); color:#FFFFFF; border:1px solid rgba(255, 255, 255, 51); padding-left: 12px;}QComboBox::drop-down{ subcontrol-origin: padding; subcontrol-position: top right; width: 15px; border-left-width原创 2021-08-18 10:09:04 · 399 阅读 · 0 评论 -
QDesigner 布局效果和实际出来效果不一致,控件间隔变了
qt 布局器是有一个时间轴顺序的,比如先设置布局的间隔大小,再设置控件的大小,则在界面空间不足时,就会压缩布局间隔大小。因此需要在最后重新修改布局间隔大小才可以实现想要的界面布局。原创 2023-08-11 10:40:14 · 364 阅读 · 0 评论 -
QButtonGroup 和按钮焦点事件
问题: 想要键盘方向键控制 按钮组里面的按钮选择状态跳转发现焦点事件进入后就无法触发了。查了一下因为设置排他和选择状态时,只能选中唯一一个按钮,所有焦点事件跳转不到其他按钮上。解决方法: 直接写一个类似按钮组的控件来模仿里面的排他功能,并且可以方向键控制焦点状态在按钮里面跳转。原创 2023-05-19 14:40:40 · 347 阅读 · 0 评论 -
qt 程序自动获取svn项目版本号(winwos系统)
1.在cmd窗口尝试 svn info 命令是否正常执行,如果无法识别svn命令则需要重装svn加上命令行功能。3.在prow文件添加构建时调用脚本。2.编写自动获取版本脚本。原创 2023-06-16 11:10:39 · 391 阅读 · 0 评论 -
QT 自定义弹窗 ,嵌入式弹窗
qt 自定义弹窗例子,欢迎补充~原创 2023-01-11 16:53:06 · 603 阅读 · 0 评论 -
QTabWidget样式设置 ,tabbar与内容窗口设置不同背景色
【代码】QTabWidget样式设置 ,tabbar与内容窗口设置不同背景色。原创 2023-01-09 17:26:30 · 4639 阅读 · 0 评论 -
qt creator 搜索里面如何使用正则表达式替换文本
1 , $2 ,这是表达式里面捕获到的第一个,第二个数据。想要快速替换不需要使用的OBject::tr(“”)包裹。效果替换为 “abc” , "def"使用方法。转移字符需要使用 \来转换。原创 2023-06-09 09:25:43 · 373 阅读 · 0 评论 -
Qt报错out of memory allocating 65536
1.先查看电脑的运行内存使用率,检查是否电脑运行内存不足导致。如果是没打开什么程序但是占用率还是很大可以重启电脑尝试,系统会由于某些故障后台占用内存。2.qt资源文件过大,大于默认限制值导致的,可以在pro文件添加属性。问题原因:运行内存不足。原创 2023-06-20 16:02:24 · 655 阅读 · 1 评论 -
QCustomPlot 类分析
1.1 QCPLayer :public QObject1.2 QCPLayerable : public QObject原创 2023-08-15 16:53:50 · 72 阅读 · 0 评论 -
QT圆角,边框圆角问题
(假如border 设置了10px宽度大小,border-radius:设置比较小的话,就会出现,边框是圆的,但是里面的content是直角的,如图2)(想要里面的content和边框都是圆角的话就得把border 的宽度设置为1px 宽,这个时候切圆角时就会把里面的content给切割,如图三)值得注意的是,border-radius:边框圆角的大小和border 的宽没有关系。:第二层,这个可以设置边框的粗细和样式。:为最外层,是空白的,用来做间隔距离。原创 2022-12-16 10:59:05 · 1139 阅读 · 0 评论 -
qss 文件不生效
工程配置–编辑器–文件编码-utf-8 bom :目前存在则保留。注意事项:1.qss文件顶行不留空。2.修改下面配置后需要重编。原创 2023-02-16 09:00:03 · 204 阅读 · 0 评论 -
windows 上打不开QT designer ,打开uI文件闪退
之前由于强制关机还是什么原因导致,在qt creator里面打开ui文件会导致qt creator 闪退。4.输入 sfc /scannow 回车等修复完重启即可。原创 2023-04-20 08:54:22 · 1095 阅读 · 0 评论 -
QProgressBar圆角
2.主要内容:圆角进度条 = 圆角矩形路径QPainterPath & 进度矩形路径QPainterPath。(&是求两个路径的交集路径的赋值运算符,等同于QPainterPath::intersected)1.方法:重写painevent 函数。原创 2023-01-03 13:50:09 · 639 阅读 · 0 评论 -
qt 构建报错:<command-line>:0:1: error: macro names must be identifiers
原因一:pro文件定义了不可识别的宏定义,看下宏定义的书写有没有符合规则。错误一数字开头:DEFINES += 03_PARAMMODULE_LIBRARY原创 2022-12-07 16:01:28 · 903 阅读 · 0 评论 -
Unable to create a debugging engine.
问题场景: qt原本一直好好的,突然有天打开运行调试版本,提示Unable to create a debugging engine.错误。这个是指无法创建一个用于调试程序的调试引擎。如果已经正确配置还是不行,需要删除 "—.pro.user"配置文件再次生成即可。解决办法: 先查看是正确配置调试器。原创 2023-09-15 09:59:23 · 1145 阅读 · 1 评论