Qt官方代码风格,可以参考一下。 缩进 使用4个空格; 注意:使用空格而不是制表符(Tab按键)。...thisOrThat) return; else somethingElse(); 纠正: if (thisOrThat) return; somethingElse(); 例外:如果代码本质上是对称的...if (longExpression + otherLongExpression + otherOtherLongExpression) { } 一般例外 如果严格遵循规则会使您的代码看起来很糟糕...ref: https://wiki.qt.io/Qt_Coding_Style
最新君君利用业余时间写了一个Qt正则代码生成器,目前支持QRegExp和QRegularExpression类的正则代码生成。 代码生成可选择代码注释,全局匹配,贪婪匹配等多种配置。...还附带了简单的正则测试方法,左栏测试,右栏代码生成。所有配置即时生成。 ...代码已转译为WASM网页版本,体验地址:https://qthub.com/tool/RegexpCode 推荐PC电脑访问,效果好点。欢迎留言交流反馈。
在使用 Qt Creator 工具开发时经常需要对代码进行代码格式化。...其中,最简单地方法是,先全选所有代码(Ctrl + A),然后格式化所选代码(Ctrl + I)——注意字母“I”,是“i”的大写,不是“L”。...开发过程中,不仅需要频繁的手动操作,而且只能进行一些简单的缩进类型格式化,配置可以在Qt Creator的“工具-选项-C+±代码风格”面板进行编辑。...在一些管理严格或者代码规范要求比较高的企业组织中,Qt Creator 这种基础的格式化无法满足日常工作需要。...勾选Beautifier,然后重启Qt Creator即可。注意:Qt Creator 版本至少要 3.10(博主当前版本为 Qt Creator 4.6.2)。
线程 QT中的QThread提供了与平台无关的线程,一个QThread代表了一个应用程序中可用独立控制的线程,它与进程中的其他线程共享数据,但是是独立执行的,QThread从run()函数开始执行,默认...run()通过exec()来开启事件循环,并在线程内运行一个Qt事件循环。
---- binSort.cpp /* * 这里是主函数的执行文件 * binSort.cpp */ #include<iostream> ...
下面是循环链表的测试代码: 主函数所在文件: circularlistwithheader.cpp /* * 主函数 */ #include #include "circularlistwithheader.h
一、前言 代码行数统计主要用来统计项目中的所有文件的代码行数,其中包括空行、注释行、代码行,可以指定过滤拓展名,比如只想统计.cpp的文件,也可以指定文件或者指定目录进行统计。...,途中重构过两次,大的结构改动,统计了下好像有15W行左右的代码,纯代码大概在10W,其余是空行和注释行,着实把自己吓了一跳,还算是中型项目了,然后又统计了下自定义控件的所有代码,我勒个去,总代码23W...主要功能: 可分别统计代码行/空行/注释行 支持指定过滤拓展名 支持指定文件或者指定目录进行统计 分步显示统计结果,不卡主界面 分别展示每个统计过的文件的大小/总行数/代码行数等 二、代码思路 void...(Qt::AlignCenter); itemCode->setTextAlignment(Qt::AlignCenter); itemNote->setTextAlignment...(Qt::AlignCenter); itemBlank->setTextAlignment(Qt::AlignCenter); ui->tableWidget->setItem
文章目录 一、Qt 下载 二、Qt 安装 三、组件选择 一、Qt 下载 ---- Qt 开发环境下载地址 : https://download.qt.io/archive/qt/ 该界面可以下载 Qt...各个版本的开发环境 ; Qt 版本选择 , Qt 的各个大版本都在同步更新 , 如 5.1 , 5.9 , 5.14 , 6.0 等 , 每个版本都有不同的性能和功能 , 每个版本进入后的二级目录的小版本...Qt 从 5.15 版本开始 , 不再提供离线安装包 , 需要自己下载源码编译安装 , 因此这里选择安装 Qt 5.14.2 版本 ; 进入 https://download.qt.io/archive.../qt/5.14/5.14.2/ 界面后 , 在根目录中分别是 windows , mac , linux 三个平台的 Qt 安装包 , 选择对应的平台即可 ; 下载 Windows 对应的安装包 qt-opensource-windows-x86...-5.14.2.exe ( 点击该链接下载 ) ; 二、Qt 安装 ---- 双击安装软件 , 点击 " Next " , 没有 Qt 账号 , 输入账户名邮箱 , 密码 , 确认密码 , 同意协议
QT容器 QString类 隐式共享: 隐式数据共享机制去最大化资源有效利用和最小化复制克隆操作。...代码示例 QString s = "Hello";//Hello数据块引用计数为1 QString s1 = s;//Hello数据块引用计数为2 QString s2 = s;...BOOL qDebug()<<s4.startsWith("哔哩哔哩"); QString s5 = "tom"; qDebug()<<s5.startsWith("tom",Qt...是否包含 qDebug()<<s5.contains("o");//同样可以表明大小写是否敏感 //比较 qDebug()<<QString::compare("Tom","tom",Qt...类型的值,包括QColor,QBrush,QFont,QRect,QString及QSize等等,而且能存放Qt的容器类型值。
QT对象树 QT提供了对象树机制,能够自动、有效的组织和管理继承自QObject的对象。...当父类对象析构的时候,其对象链表中的所有(子类)对象也会被析构,父对象会自动,将其从父对象列表中删除,QT保证没有对象会被delete两次。
前言 Qt Quick和Qt Widgets这两种技术,官方是强推Qt Quick的。...https://download.qt.io/official_releases/QtForPython/ 注意: Qt Widgets使用Python结合PySide2开发的时候,窗口的缩放,内部的组件不会随之缩放...所以目前我就不太建议用Qt Widgets形式开发,建议Qt Quick. 常见属性 结合控件的SizePolicy属性,来控制布局管理中的控件的尺寸自适应方式。...注:sizeHint(布局管理中的控件默认尺寸,如果控件不在布局管理中就为无效的值) 加载UI的两种方式 方式1 转成代码后加载 UI文件转Python代码 pyside2-uic form.ui -o...self.setWindowFlags(Qt.FramelessWindowHint)
文件处理 QFile类用于文件操作,它提供了读写文件的接口,可以读写文件、二进制文件和Qt资源文件。 处理文本文件和二进制文件,可以使用QTextStream类和QDataStream类。
前言 QT Quick和Qt widgets这两种技术,官方是强推QT Quick的。...QT Quick中布局一般有如下四种方式, 绝对坐标:x、y、z、width、height、top、left 锚(anchors) 布局 定位器(Row、Column、Grid、Flow) 布局管理器(...//窗口标志 说明是什么窗口 使用 | 分割,缺省为Qt.Window //Qt.Window 普通窗口模式,带标题栏 //Qt.FramelessWindowHint 隐藏标题栏窗口...opacity:1 } opacity这个属性是对当前组件以及子组件都设置不透明度,所以不太适用 color: Qt.rgba(0,0,0,0)是对当前设置透明度,不会传到子组件 组件 基本组件...代码如下 import QtQuick 2.14 import QtQuick.Window 2.14 import QtQuick.Layouts 1.12 Window { width:
rootFrame = document->rootFrame(); //文档格式框架 QTextFrameFormat format; format.setBorderBrush(Qt...setFrameFormat(format); //设置文本边框风格 QTextFrameFormat frameFormat; frameFormat.setBackground(Qt...//字符格式 QTextCharFormat charFormat; //设置背景色 charFormat.setBackground(Qt...{ QTextCharFormat format;//字符格式 format.setFontWeight(QFont::Bold); format.setBackground(Qt...::red); format.setForeground(Qt::green) ; QString pattern = "\\bgood\\b";//匹配单词边界 QRegExp
模型/视图编程 Qt中的模型/视图架构用来实现大量的数据存储、处理及显示。...::green); item2->setData("C",Qt::EditRole); item2->setData("indexC",Qt::ToolTipRole); item2...::Orientation orientation, int role) const { if(role == Qt::DisplayRole && orientation == Qt::Horizontal...= Qt::DisplayRole) { return QVariant(); } //水平表头 if(orientation == Qt::Horizontal...Qt提供了项目试图的便捷类,这些类底层通过模型/视图框架实现。
事件处理 QT中,事件作为一个对象,继承自QEvent类,常见的有键盘事件QKeyEvent、鼠标事件QMouseEvent和定时器事件QTimerEvent等。...QT中,任何QObject子类示例都可以接收和处理事件。实际编程中通常实现部件的paintEvent()、mousePressEvent()等事件处理函数来处理特定部件的特定事件。...每个程序的main函数最后都会调用QApplication类的exec()函数,它会使QT应用程序进入到事件循环,使应用程序在运行的时候接收各种事件。...一旦有事件发生,QT便会构造一个相应的QEvent子类的对象来表示它,然后将它传递给QObject对象或子对象。 ---- 鼠标事件 对鼠标实现进行重写来实现你想要达到的功能。...{ statusBar()->showMessage(QString("左键:") +str ); } else if(event->button() == Qt
文章目录 一、创建 Qt 桌面程序 二、构建并运行 Qt 桌面程序 一、创建 Qt 桌面程序 ---- 首先要安装 Qt 开发环境 , 参考 【Qt】Qt 开发环境安装 ( Qt 版本 5.14.2 |...Qt 下载 | Qt 安装 ) 博客 ; 打开 Qt Creator 开发环境 , 选择 " 菜单栏 / File / 新建文件或项目 ( N ) " , 在弹出的 " New File or Project...- Qt Creator " 对话框中 , 选择左侧 Application 选项卡 , 选择 " Qt Widgets Application " 应用 , 然后点击 " Choose " 按钮 ,...下一步 " , 该项使用默认设置 , 点击 " 下一步 " , 该项使用默认设置 , 点击 " 下一步 " , 该项使用默认设置 , 点击 " 下一步 " , 上述设置完成后 , 自动生成一个 Qt..., 即可运行该 Qt 桌面程序 , 运行效果如下 :
我为什么从web转向qt?...(Qt4版本是qt gui Application , Qt5之后, gui界面用widgets可以做, 用qml也可以做, 就分开了。...故widgets Application 选项 就是qt GUI Application) Widgets适合传统桌面程序 Qt Quick 是 Qt 4.7 主推的技术 Qt 官网介绍:Qt...众所周知,Qt 为跨平台而生,而 QML/Qt Quick 作为 Qt 新生力量,完完全全继承了 Qt 包罗万象的特点,它的诞生为 Qt 进军移动领域迈出了历史性的一步。...使用 C++ 创建的数据可从 QML 直接访问,而 QML 对象也可从 C++ 代码进行访问。
QT窗口部件 默认部件基类 QT提供的默认部件基类包括QMainWindow、QWidget、和QDialog,这三个部件基类也是用的最多的。...布局有一个中心区域,通常是标准的QT部件,也可以是定制的部件,且必须有一个中心小部件。setCentralWidget()方法可设置中心部件。...QWidget构造函数有两个参数:QWidget*parent = 0,QT:WindowFlages f = 0。...QT:WindowFlags是QT:WindowType,枚举值的组合,用来设置窗口的属性,f=0表示默认为QT:Widget风格,setWindowState()可设置窗体的状态,参数由QT:WindowStates...()方法设置模态,如 QDialog dlg; dlg.setModal(true); dlg.show(); (3)QWidget widget; widget.setWindowModality(Qt
QT元对象系统(Meta-Object-System) 元对象系统 元对象系统是一个基于标准C++的扩展,为QT提供了信号与槽机制、实时类型信息、动态属性系统。...它为高层次的事件处理自动生成所需要的必要代码。QT程序在交由标准编译器编译之前,先要使用moc分析C++源文件。...这个源文件中包含了Q_OBJECT宏的实现代码。新的文件同样将进入编译系统,与源文件一起参与编译。构建生成的.o文件包含与moc生成的.cpp文件中。...QT的信号与槽机制: QT的信号与槽机制是类型安全的,松耦合,更灵活,更方便。 信号与槽(Signal & Slot)是QT编程的基础,也是QT的一大创新。...发生信号使用QT的emit关键字。QT的signals关键字指出进入了信号的声明区,随后即可声明自己的信号。 **槽(Slot)**就是对信号响应的函数。
领取专属 10元无门槛券
手把手带您无忧上云