合集-Qt 窗体开发从入门到精通

摘要:Qt程序编译后,需要去qt目录拷贝几个文件,与qt程序放在一起该程序才可以脱离开发环境而独立运行下去,在开发环境下编译好代码以后,还需要进行以下操作将其打包才可以在别的机器上正常运行。 阅读全文
posted @ 2020-05-05 16:01 lyshark 阅读(3952) 评论(0) 推荐(2)
摘要:Qt 是一个跨平台的图形化类库,常用数据结构就是对C++ STL的二次封装,使其更加易用,如下是经常会用到的一些数据结构和算法,其中包括了QString,QList,QLinkedList,QVector,QStack,QQueue,qmap,qmultimap,qhash,qmultihash,qmultihash,qset容器的具体使用细节。 阅读全文
posted @ 2020-11-17 22:16 lyshark 阅读(3446) 评论(0) 推荐(2)
摘要:Qt文件操作有两种方式,第一种使用QFile类的IODevice读写功能直接读写,第二种是利用 QFile和QTextStream结合起来,用流的方式进行文件读写。 第一种,利用QFile中的相关函数,实现对文件的读写操作,QFile会调用IODevice设备,从而实现文件读写。 QT基本文件读写: 阅读全文
posted @ 2021-10-21 15:25 lyshark 阅读(1553) 评论(0) 推荐(0)
摘要:通常情况下Qt如果需要建立网络通信则必须依附于图形界面,但如果是新手入门,图形界面则显得太过于繁琐不利于学习原理,如下本人实现了命令行版本的网络通信案例,能够让读者更好的理解Qt是如何创建网络通信套接字的。 阅读全文
posted @ 2021-10-14 16:57 lyshark 阅读(742) 评论(0) 推荐(0)
摘要:实现对特定文件的监控,Qt中提供了`QFileSystemWatcher`调用这个接口可以快速实现监控功能,当有文件发生变化是自动触发并输出文件具体信息。 阅读全文
posted @ 2021-05-21 09:31 lyshark 阅读(1247) 评论(0) 推荐(0)
摘要:Qt中实现自定义信号与槽函数,信号用于发送并触发槽函数,槽函数则是具体的功能实现,如下我们以老师学生为例子简单学习一下信号与槽函数的使用方法。 使用无参数信号与槽: 首先定义一个teacher类,该类中用于发送一个信号,其次student类,定义用于接收该信号的槽函数,最后在widget中使用emi 阅读全文
posted @ 2020-11-20 11:49 lyshark 阅读(2617) 评论(0) 推荐(0)
摘要:TreeWidget 目录树组件,该组件适用于创建和管理目录树结构,在开发中我们经常会把它当作一个升级版的ListView组件使用,因为ListView每次只能显示一列数据集,而使用TableWidget组件显示多列显得不够美观,此时使用Tree组件显示单层结构是最理想的方式,本章博文将通过Tree 阅读全文
posted @ 2021-11-26 17:01 lyshark 阅读(1219) 评论(1) 推荐(0)
摘要:在上一篇博文 《C/C++ Qt 标准Dialog对话框组件应用》 中我给大家演示了如何使用Qt中内置的标准对话框组件实现基本的数据输入功能。 但有时候我们需要一次性修改多个数据,使用默认的模态对话框似乎不太够用,此时我们需要自己创建一个自定义对话框,这类对话框也是一种窗体,所以可以在其上面放置任何 阅读全文
posted @ 2021-11-25 16:14 lyshark 阅读(3087) 评论(0) 推荐(1)
摘要:在Qt中对话框分为两种形式,一种是标准对话框,另一种则是自定义对话框,在一般开发过程中标准对话框使用是最多的了,标准对话框一般包括 QMessageBox,QInputDialog,QFileDialog 这几种,这里我将总结本人在开发过程中常用到的标准对话框的使用技巧。 Qt框架下,常用的标准对话 阅读全文
posted @ 2021-11-24 15:38 lyshark 阅读(1160) 评论(0) 推荐(2)
摘要:在Qt中通过使用选择夹组件可以实现在一个页面中集成多种功能,我们以TabWidget选择夹组件为例,实现在单个页面中集成多个功能,并给每一个子夹增加对应的Ico图标。 如果我们使用选择夹组件,必须提前拖入UI界面中(无法代码生成),如下我们找到TabWidget并将其拖入UI界面中。 其次需要增加与 阅读全文
posted @ 2021-11-24 09:36 lyshark 阅读(2015) 评论(0) 推荐(0)
摘要:ToolBar工具栏在所有窗体应用程序中都广泛被使用,使用ToolBar可以很好的规范菜单功能分类,用户可根据菜单栏来选择不同的功能,Qt中默认自带ToolBar组件,当我们以默认方式创建窗体时,ToolBar就被加入到了窗体中,一般是以QToolBar的方式存在于对象菜单栏,如下所示。 QTool 阅读全文
posted @ 2021-11-23 16:33 lyshark 阅读(6618) 评论(0) 推荐(0)
摘要:QT 是一个跨平台C++图形界面开发库,利用QT可以快速开发跨平台窗体应用程序,在QT中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率。 目前,QT开发中常用的基础组件有以下几种: PushButton 按钮组件 LineEdit 单行输入组件 SpinBox 数 阅读全文
posted @ 2021-11-23 09:16 lyshark 阅读(2805) 评论(0) 推荐(0)
摘要:QtCharts 组件是QT中提供图表绘制的模块,该模块可以方便的绘制常规图形,Qtcharts 组件基于GraphicsView模式实现,其核心是QChartView和QChart的二次封装版。 在使用绘图模块时需要在pro文件中包含QT += charts来引入绘图类库。 然后还需在头文件中定义 阅读全文
posted @ 2021-11-19 14:48 lyshark 阅读(2328) 评论(0) 推荐(1)
摘要:QThread库是QT中提供的跨平台多线程实现方案,使用时需要继承QThread这个基类,并重写实现内部的Run方法,由于该库是基本库,默认依赖于QtCore.dll这个基础模块,在使用时无需引入其他模块. 实现简单多线程: QThread库提供了跨平台的多线程管理方案,通常一个QThread对象管 阅读全文
posted @ 2021-11-15 11:22 lyshark 阅读(872) 评论(0) 推荐(0)
摘要:SqlTableModel 组件可以将数据库中的特定字段动态显示在TableView表格组件中,通常设置QSqlTableModel类的变量作为数据模型后就可以显示数据表内容,界面组件中则通过QDataWidgetMapper类实例设置为与某个数据库字段相关联,则可以实现自动显示字段的内容,不仅是显 阅读全文
posted @ 2021-12-09 11:21 lyshark 阅读(1389) 评论(0) 推荐(0)
摘要:Qt 数据库组件与TableView组件实现联动,以下案例中实现了,当用户点击并选中TableView组件内的某一行时,我们通过该行中的name字段查询并将查询结果关联到ListView组件内,同时将TableView中选中行的字段分别显示在窗体底部的LineEdit编辑内,该案例具体实现细节如下。 阅读全文
posted @ 2021-12-08 14:14 lyshark 阅读(1536) 评论(0) 推荐(1)
摘要:Qt中的SQL数据库组件可以与ComBox组件形成多级联动效果,在日常开发中多级联动效果应用非常广泛,例如当我们选择指定用户时,我们让其在另一个ComBox组件中列举出该用户所维护的主机列表,又或者当用户选择省份时,自动列举出该省份下面的城市列表等。 今天给大家分享二级ComBox菜单如何与数据库形 阅读全文
posted @ 2021-12-08 07:44 lyshark 阅读(1346) 评论(0) 推荐(0)
摘要:在上一篇博文《C/C++ Qt 数据库QSql增删改查组件应用》介绍了Qt中如何使用SQL操作函数,并实现了对数据库的增删改查等基本功能,从本篇开始将实现数据库与View组件的绑定,通过数据库与组件关联可实现动态展示数据库中的表记录。 我们先以TreeView组件为例,简单介绍一下如何实现组件与数据 阅读全文
posted @ 2021-12-07 10:46 lyshark 阅读(1398) 评论(0) 推荐(0)
摘要:Qt SQL模块是Qt中用来操作数据库的类,该类封装了各种SQL数据库接口,可以很方便的链接并使用,数据的获取也使用了典型的Model/View结构,通过MV结构映射我们可以实现数据与通用组件的灵活绑定,一般SQL组件常用的操作,包括,读取数据,插入数据,更新数据,删除数据,这四个功能我将分别介绍它 阅读全文
posted @ 2021-12-06 15:30 lyshark 阅读(1636) 评论(3) 推荐(3)
摘要:QStandardItemModel 是标准的以项数据为单位的基于M/V模型的一种标准数据管理方式,Model/View 是Qt中的一种数据编排结构,其中Model代表模型,View代表视图,视图是显示和编辑数据的界面组件,而模型则是视图与原始数据之间的接口,通常该类结构都是用在数据库中较多,例如模 阅读全文
posted @ 2021-12-05 11:57 lyshark 阅读(1641) 评论(0) 推荐(1)
摘要:StringListModel 字符串列表映射组件,该组件用于处理字符串与列表框组件中数据的转换,通常该组件会配合ListView组件一起使用,例如将ListView组件与Model模型绑定,当ListView组件内有数据更新时,我们就可以利用映射将数据模型中的数值以字符串格式提取出来,同理也可实现 阅读全文
posted @ 2021-12-04 10:01 lyshark 阅读(890) 评论(0) 推荐(1)
摘要:Qt窗体中默认会附加一个QstatusBar组件,状态栏组件位于主窗体的最下方,其作用是提供一个工具提示功能,当程序中有提示信息是可以动态的显示在这个区域内,状态栏组件内可以增加任何Qt中的通用组件,只需要通过addWidget函数动态追加即可引入到底部,底部状态栏在实际开发中应用非常普遍,以下代码 阅读全文
posted @ 2021-12-03 15:51 lyshark 阅读(6308) 评论(0) 推荐(2)
摘要:在开发窗体应用时通常会伴随分页,TabWidget组件配合自定义Dialog组件,可实现一个复杂的多窗体分页结构,此类结构也是ERP等软件通用的窗体布局方案。 首先先来实现一个只有TabWidget分页的简单结构,如下窗体布局,布局中空白部分是一个TabWidget组件,下方是一个按钮,当用户点击按 阅读全文
posted @ 2021-12-03 09:50 lyshark 阅读(2516) 评论(0) 推荐(0)
摘要:TableDelegate 自定义代理组件的主要作用是对原有表格进行调整,例如默认情况下Table中的缺省代理就是一个编辑框,我们只能够在编辑框内输入数据,而有时我们想选择数据而不是输入,此时就需要重写编辑框实现选择的效果,代理组件常用于个性化定制Table表格中的字段类型。 代理类的作用是用来实现 阅读全文
posted @ 2021-12-01 18:33 lyshark 阅读(1141) 评论(0) 推荐(0)
摘要:TableWidget 表格结构组件,该组件可以看作是TreeWidget树形组件的高级版,表格组件相比于树结构组件灵活性更高,不仅提供了输出展示二维表格功能,还可以直接对表格元素直接进行编辑与修改操作,表格结构分为表头,表中数据两部分,表格结构可看作一个二维数组,通过数组行列即可锁定特定元素,如下 阅读全文
posted @ 2021-12-01 11:13 lyshark 阅读(1589) 评论(0) 推荐(0)
摘要:MDI多窗体组件,主要用于设计多文档界面应用程序,该组件具备有多种窗体展示风格,其实现了在父窗体中内嵌多种子窗体的功能,使用MDI组件需要在UI界面中增加mdiArea控件容器,我们所有的窗体创建与操作都在这个容器内进行,如下我们将具体介绍该组件的常用使用技巧。 MDI窗体控件类似于画布,该控件只具 阅读全文
posted @ 2021-11-30 20:58 lyshark 阅读(1574) 评论(2) 推荐(0)
摘要:虽然TreeWidget组件可以实现多节点的增删改查,但多节点操作显然很麻烦,在一般的应用场景中基本上只使用一层结构即可解决大部分开发问题,TreeWidget组件通常可配合TabWidget组件,实现一个类似于树形菜单栏的功能,当用户点击菜单栏中的选项时则会跳转到不同的页面上。 首先在Qt的Ui编 阅读全文
posted @ 2021-11-30 13:46 lyshark 阅读(1454) 评论(1) 推荐(0)
摘要:在上一篇博文《C/C++ Qt ListWidget 列表框组件应用》中介绍了ListWidget组件的基本使用技巧,本次将给ListWidget组件增加一个右键菜单,当用户在ListWidget组件中的任意一个子项下右键,我们让其弹出这个菜单,并根据选择提供不同的功能。 为了增加菜单,我们首先需要 阅读全文
posted @ 2021-11-29 13:56 lyshark 阅读(1936) 评论(2) 推荐(1)
摘要:ListWidget列表框组件,该组件与TreeWidget有些相似,区别在于TreeWidget可以实现嵌套以及多字段结构,而ListWidget组件则只能实现单字段结构,ListWidget组件常用于显示单条记录,例如只显示IP地址,用户名等数据,如下笔记是本人在开发中经常用到的一些基本操作技巧 阅读全文
posted @ 2021-11-28 13:06 lyshark 阅读(2399) 评论(0) 推荐(0)
摘要:在上一篇博文《C/C++ Qt TreeWidget 单层树形组件应用》中给大家演示了如何使用TreeWidget组件创建单层树形结构,并给这个树形组件增加了右键菜单功能,接下来将继续延申树形组件的使用,并实现对树形框多节点的各种操作,如下笔记是本人在开发中经常用到的一些基本操作技巧。 常用树形框节 阅读全文
posted @ 2021-11-27 15:56 lyshark 阅读(2512) 评论(0) 推荐(1)
摘要:JSON是一种轻量级的数据交换格式,它是基于ECMAScript的一个子集,使用完全独立于编程语言的文本格式来存储和表示数据,简洁清晰的的层次结构使得JSON成为理想的数据交换语言,Qt库为JSON的相关操作提供了完整的类支持. 阅读全文
posted @ 2022-01-07 14:33 lyshark 阅读(1197) 评论(2) 推荐(1)
摘要:JSON是一种简单的轻量级数据交换格式,Qt库为JSON的相关操作提供了完整的类支持,使用JSON解析文件之前需要先通过TextStream流将文件读入到字符串变量内,然后再通过QJsonDocument等库对该JSON格式进行解析,以提取出我们所需字段。 首先创建一个解析文件,命名为config. 阅读全文
posted @ 2022-01-06 09:47 lyshark 阅读(2676) 评论(0) 推荐(0)
摘要:在前面的博文中具体介绍了QChart组件是如何绘制各种通用的二维图形的,本章内容将继续延申一个新的知识点,通过数据库存储某一段时间节点数据的走向,当用户通过编辑框提交查询记录时,程序自动过滤出该时间节点下所有的数据,并将该数据动态绘制到图形组件内,实现动态查询图形的功能。 首先通过如下代码,创建Ti 阅读全文
posted @ 2021-12-11 15:54 lyshark 阅读(2501) 评论(0) 推荐(1)
摘要:在上一篇博文中详细介绍了SqlTableModle组件是如何使用的,本篇博文将介绍SqlRelationalTable关联表组件,该组件其实是SqlTableModle组件的扩展类,SqlRelationalTable组件可以关联某个主表中的外键,例如将主表中的某个字段与附加表中的特定字段相关联起来 阅读全文
posted @ 2021-12-09 17:32 lyshark 阅读(1105) 评论(0) 推荐(0)


loading... | loading...
博客园 - 开发者的网上家园