一、概述

Qt是一个用标准C++编写的跨平台开发类库,它对标准C++进行了扩展,引入了元对象系统、信号与槽、属性等特性,使应用程序的开发变得更高效。Qt的缺点:运行库的尺寸大,Bug多。

Qt类库中大量的类是以模块形式分类组织的,包括基本模块和扩展模块等,一个模块通常就是一个编程主题,如数据库、图表、网络等。

二、设计流程

2.1设计框架

确定整体结构

2.2搭建组件与布局

共有三种方式,如上图所示。

2.2.1代码化设计:由于界面设计的底层其实都是C++代码实现的,只是Qt巧妙地进行了处理。用代码底层实现的功能比可视化设计更强大和灵活。某些界面效果是可视化设计无法完成的。缺点:需要对组件的熟悉层度高以及需要对UI布局有个完整的规划,不如可视化设计直观,且编写代码工作量大。

2.2.2界面化设计:采用UI设计器设计了窗体界面,采用可视化和程序化的方法设计槽函数,设计信号与槽函数之间的关联。可以看出,Qt具备强大的可视化设计功能。让用户省去了很多繁琐的界面设计工作。但是可视化UI设计也存在一些缺陷,如某些组件无法可视化地添加,比如在工具栏上无法可视化添加ComboBox组件,而用代码就可以。

2.2.3混合式设计:采用纯代码方式进行UI设计功能强大,效率相对较低,过程较繁琐;利用可视化UI设计操作简单,能够直观感性的进行界面设计,但部分功能无法实现。混合式设计就是能用可视化设计的就用可视化设计解决,无法解决的用纯代码方式,将两种方法结合,是高效设计UI的方法。(或者先进行可视化设计,然后将自动生成的代码拷贝到纯代码工程中)。

2.3信号与槽函数

信号与槽(Signal&Slot)是Qt的核心创新。GUI程序设计主要内容就是对界面上各种组件的信号的响应。有了信号与槽机制,各个组件的交互操作变得直观和简单。

①信号:就是在特定情况下被发起的事件;

②槽:就是对信号响应的函数;

③优点:松散耦合。

信号与槽的连接方式如下图:

信号与槽的应用方式:

多个组件对应一个响应动作时:一般用于为多个同类型组件的同一信号编写一个槽函数,在槽函数里区分信号来源分别做处理,避免为每个组件分别编写槽函数形成代码冗余。

2.4QSS美化

原理与CSS相似,可设计的方面主要有:

1、修改组件的边框属性,包括颜色、大小、形状等;

2、修改字体样式;

3、修改组件前景、背景的颜色及图案,鼠标停留、按压及选择等动作时对应的组件属性的设置。

此外,可以设计动态背景图和元素图。

以上就是整个软件界面设计的基本思路,涉及具体代码,可以留言交流!

入门学Qt_软件Demo界面GUI设计流程综述相关推荐

  1. 2023年电音制作入门学什么软件,电音制作入门怎么学习

    电子音乐目前已经成为了年轻人的一大爱好,而全国各地随处可见的音乐节更是代表着电子音乐文化已经逐渐被年轻人所接受,在这样的大背景下,一些年轻人也开始了自己创作电子音乐的道路.然而编写电子音乐需要一定的条 ...

  2. QT界面GUI设计之选择文件并显示

    QT界面GUI设计之打开图片并显示 准备做一个Qt的界面,只是实现了基本功能,但是各种相关细节还没有做到位,今天凑了半天论文,毫无进展,下午把QT界面又拿出来研究了一下,主要是打开文件选择图片后显示. ...

  3. QT界面GUI设计之Lable图片及文字显示

    QT界面GUI设计之Lable图片及文字显示 今天主要写一下Qt界面设计的Label相关用法,因为没有系统的学习,所以今天发现以前错了好多,今天记录一下,Label的相关用法. 首先是搭建一个Labe ...

  4. 软件项目研发的设计流程

    一个软件项目研发的设计流程是怎样的呢?以通常标准的设计方法为例,(不过笔者喜欢快速原型法). 第一个步骤是市场调研 技术和市场要结合才能体现最大价值. 第二个步骤是需求分析 这个阶段需要出三样东西,用 ...

  5. 聊聊软件登录界面的设计与交互

    前面说了一堆废话,想看代码的可直接看第二章. 版本记录 日期 备注 2020-06-13 初稿 零.前言 这个登录界面提取自最近正在做的一个项目,此项目曾被我自豪地称为是公司数采软件的颜值担当,虽然这 ...

  6. python界面GUI设计、tkinter设计界面初步教程

    如果没有时间仔细看完这篇文章的话可以现在下载PAGE+TCL然后直接输入最后代码运行程序即可. python可以使用tkinter库来实现小程序制作,还是很方便的,比较大型程序可以采用pyqt来制作G ...

  7. 【UI入门必读】一个完整的UI设计流程是怎样的?

    UI设计绝不是掌握几种软件技能或了解入门知识就可以的.想要做好UI设计,一定要多看多练,先借鉴,再原创.还应该多培养自己的设计思维和逻辑思维.这就需要在设计前清楚的知道UI设计的所有流程. UI设计一 ...

  8. ui设计和python哪个容易学_软件开发和ui设计那个容易学?

    感谢邀请,以下是我的一些亲身经历,想和大家分享. 真心的!建议哪怕是念完一个普通高中,也比现在直接去学那些职业技能要好,学历高一点,你面对的选择.能做的选择也会更多一些,能够拓宽你未来的职业路. 初中 ...

  9. ui设计师需要学哪些软件

    ui设计师也属于设计类岗位,但它跟一般设计岗又不同,如果是平面设计需要有美学.绘画基础才能转行,而ui设计不同,它在我国处于起步阶段,市场需求度大且门槛要求低,学好软件.心理学,懂得站在用户需要角度出 ...

  10. ADI官方源码快速搭建demo工程验证设计的正确性

    目录 1 ADI官方demo工程设计简介 2  ADI官方HDL源码介绍 2.1  HDL源码用户指导书:ADI Reference Designs HDL User Guide 2.2  C源代码下 ...

最新文章

  1. RDKit toolkit实战二:Generating Similarity Maps Using Fingerprints
  2. 华为路由器RIP协议通信的配置
  3. xxxx must either be declared abstract or implement abstract method ‘map(T)‘ in ‘MapFunction‘
  4. JavaScript高级程序设计之什么是原型模式
  5. 奇妙的go语言(面向对象)
  6. lumisoft.net 邮件管理系列文章 - 如何判断附件为内嵌式还是附加式
  7. Winrar 5.60 beta 4 个性破解注册码(2018.5.22)
  8. web测试中如何简单定位bug
  9. 光E电做好个人理财规划理财如此简单
  10. 用python判断身份证号性别_验证身份证号的Python脚本
  11. GD32报错Feature(s) : RDI, FlashBP, FlashDL, JFlash, GDB
  12. 浏览器全屏和pc显示器全屏
  13. SSD1306双内存驱动
  14. arm平台linux的ethtool配置,ARM-Linux驱动--DM9000网卡驱动分析(四)
  15. 一些知识点,点击波纹,Toolbar和侧滑视图结合等
  16. MFC控件使用说明书
  17. 【MOT 多目标跟踪 综述 】(更新中)
  18. SAP 生产订单工序报工示例(自动报非关键工序、自动打上完工标识)
  19. 万达保安“苦修Java”,7个月破茧成蝶,如今薪资翻了4倍
  20. 概念火热下的云游戏,究竟有着怎样的技术内涵?

热门文章

  1. SVN删除文件及恢复
  2. JDK下载与安装教程(超详细)
  3. 财联社24小时电报关键词监控提醒
  4. 完整版商城PHP源码小程序,前后端+后台+小程序;访问地址在文末
  5. C语言的32个关键字(简单介绍加解析方便记忆)
  6. soft215@163.com,销售工程造价,建筑,工控,模拟分析,财务等商业版软件︻◣
  7. adb for linux 工具包,Linux(Ubuntu)下配置安装adb工具
  8. 电子时钟课程设计报告
  9. 此计算机屏保怎么取消,如何取消屏幕保护
  10. 想给视频去色并加马赛克就用它