![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Qt
文章平均质量分 64
Qt学习实践记录
黑山老妖的笔记本
这个作者很懒,什么都没留下…
展开
-
Qt笔记-构建较为层次较为分明项目工程
前言一般情况下,在Qt或者是VS创建一个项目后,只会简单的生成三个Filter过滤器,头文件+源文件+UI设计师文件;实际项目中的代码是这样子的:小项目或者是Demo代码,这样组建项目是没有问题的。但是当项目代码有一定规模,或者一个项目从小项目不断追加形成一个大项目时,就会发现这种构建项目的缺点:无组织无纪律;头文件和源文件以及UI文件都掺杂在一块;毫无层次,毫无模块的划分;这时是不是就需要对这些文件进行分门别类整理,该使用MVC的使用MVC,该对公有工具类或者是算法类独立为静态库或者动态库单独模原创 2021-08-27 21:56:53 · 1330 阅读 · 0 评论 -
Qt笔记-调整QToolBar中图标的尺寸
使用setIconSize方法设置ToolBar中的图标的尺寸;用来设置图标可以具有的最大尺寸,较小尺寸的图标并不会按比例放大。QToolBar *fileToolBar;fileToolBar = addToolBar(tr("&File"));fileToolBar->addAction(newAction);fileToolBar->addAction(openAction);fileToolBar->addAction(saveAction);图标都被控制在一原创 2021-08-07 16:50:37 · 6913 阅读 · 0 评论 -
学习《GUI Qt4 编程》笔记-03-可以改变形状的对话框-扩展对话框的实现
改变形状的对话框最常见的可改变形状的对话框有两种:扩展对话框和多页多话框;扩展对话框通常只显示简单的外观,但是它还有一个切换按钮,可以让用户在对话框的简单外观和扩展外观之间来回切换。扩展对话框通常用于试图同时满足普通用户和高级用户需要的应用程序中,这种应用程序通常会隐藏那些高级选项,除非用户明确要求看到它们。设计一个扩展对话框的所需要的就是一个切换按钮、一些信号-槽连接以及一个不可以改变尺寸大小的布局。具体步骤:1.创建新的UI文件,选择Qt下的Qt设计师界面类,选择Dialog without原创 2021-07-23 22:33:28 · 164 阅读 · 1 评论 -
学习《GUI Qt4 编程》笔记-06-父-子对象机制
父-子对象机制 Qt的父-子机制是在QObject中实现的。当利用一个父对象创建一个子对象(一个窗口部件,一个检验器,或是任意的其他类型)时,父对象会把这个子对象添加到自己的子对象列表中。当删除这个父对象时,它会遍历子对象列表并且删除每一个子对象。然后,这些子对象再去删除它们自己所包含的每个子对象。如此反复递归调用,直至清空所有子对象为止。这种父-子对象机制可在很大程度上简化内存管理工作,降低内存泄露的风险。需要明确删除的对象是那些使用new创建的并且没有父对象的对象。并且,如果在删除一个父对象之前删除原创 2021-07-23 22:27:43 · 107 阅读 · 0 评论 -
学习《GUI Qt4 编程》笔记-02-代码实现控件布局-设计师控件布局
对话框,之所以被成为对话框,是因为它们为用户和应用程序之间提供了一种可以相互“交谈”的交互方式。绝大多数的图形用户界面应用程序都带有一个有菜单栏、工具栏构成的主窗口以及几十个对主窗口进行补充的对话框。手写一个对话框;finddialog.h#ifndef FINDDIALOG_H#define FINDDIALOG_H#include <QDialog>class QCheckBox;class QLabel;class QLineEdit;class QPushButt原创 2021-07-23 21:28:49 · 234 阅读 · 1 评论 -
学习《GUI Qt4编程》笔记-05-信号和槽
信号和槽 信号和槽机制是Qt编程的基础,信号和槽不只局限于图形用户界面编程,也可以被用于任何QObject的子类中; 槽和普通的C++成员函数几乎是一样的——可以是虚函数;可以被重载;可以是公有的、保护的或者私有的,并且可以被其他C++成员函数直接调用;它们的参数可以是任意类型。注意:槽函数可以和信号连接在一起,在这种情况下,每当发射这个信号的时候,就会自动调用这个槽; 信号和槽的连接:connect(sender,SIGNAL(signal),receiver,SLOT(slot));原创 2021-07-23 09:56:22 · 124 阅读 · 0 评论 -
学习《GUI Qt4 编程》笔记-01-QSpinBox微调框和QSlider滑块联动
Qt4使用SIGNAL和SLOT连接信号和槽函数;QObject::connect(spinBox,SIGNAL(valueChanged(int)),slider,SLOT(setValue(int)));QObject::connect(slider,SIGNAL(valueChanged(int)),spinBox,SLOT(setValue(int)));Qt5中增加了使用函数指针来连接,就出现了一个问题,当一个函数名有多个重载时,仅仅靠函数名是不能够定位到使用的具体函数,就需要进行转换;原创 2021-07-23 09:46:53 · 563 阅读 · 2 评论 -
VTK笔记-Qt5.12.11编译VTK9.0.3-QVTKOpenGLNativeWidget
在学习VTK的过程中,使用的是控制台的方式来实现VTK的功能。多次调整参数就需要多次的编译,十分不便。想着使用界面化的方式来学习VTK会事半功倍,且能掌握一门GUI方面的技能。编译VTK 使用VTK最新发布版本9.0.3,在编译过程中增加了Qt的配置; 由于当前机器上没有VS2019,就使用了VS2017版本;选择x64; Finsih后,在Search中搜索Qt,列表中出现和Qt相关的配置项,我这里将所有的选项设置为“YES”; 还可以开启使用VTK_USE_LARGE_DATA原创 2021-07-14 09:54:17 · 8590 阅读 · 16 评论 -
Qt笔记-生成静态库和动态库
动态库写.pro文件:# 不使用qt库CONFIG -= qt# 项目类型是类库,在Windows下生dll/lib,在linux下生So/a;TEMPLATE = lib# 定义DLLDEMO_LIBRARY宏;DEFINES += DLLDEMO_LIBRARY# 使用C++11;CONFIG += c++11# 项目中包含的.cpp文件SOURCES += \ dlldemo.cpp# 项目中包含的.h文件HEADERS += \ dllDemo_global.h \原创 2021-06-27 08:34:30 · 1207 阅读 · 0 评论 -
《Qt 5/PyQt5 实战指南》学习笔记-pro文件
文章目录前言常用类型1.EXE还是DLL-----TEMPLATE2.用什么开发语言-----LANGUAGE3.生成的目标文件名是啥---TARGET4.debug还是release---CONFIG5.使用Qt的哪些模块-----QT6.各种DIR和各种PATH7.FORMS8.HEADERS9.SOURCE10.RESOURCE11.LIBS12.TRANSLATIONS13.SUBDIRS前言pro文件是Qt定义的项目配置文件,qmake 的工程(project)文件,它是文本格式的文件,采用k原创 2021-04-18 21:28:24 · 1358 阅读 · 0 评论 -
Qt自定义控件创建和使用
Qt自定义控件创建和使用Qt中很方便的是使用各种自定义控件来分模块实现各种子功能,用于实现代码的解耦;之前在使用Qt 5.12创建自定义控件时,出现了各种问题,多次重装QtCreator和VS,屡次失败,乃至一度放弃。话说写代码很简单,环境的配置却很难,不知道有多少人在各种开发环境的配置时,被这种挫败感打击而放弃;不死心,从同事的实例中看到了自定义控件的有效实现,亲自实验,确实能用,写个备忘录记录一下;一、创建自定义控件1.首先新建项目,选择“其他项目”下的“Qt4设计师自定义控件”2.新建一原创 2021-03-31 22:34:39 · 8826 阅读 · 1 评论