前言

设计一个软件,最简单的方式就是把控件直接往UI上放,然后再把功能实现了。这样可以实现基本的功能,但是界面不能缩放,如果拖动软件改变界面的大小,界面上的控件就会乱成一团,或者是界面的控件压根就不会跟着界面的大小进行改变。

要使界面上的所有控件都随着界面的变化而变化,做到自适应,这就需要使用到界面布局功能。

下面介绍一个多界面UI的设计过程。它的最终效果如下:

(一)创建主界面

创建MainWindow主界面,在上一章中已经有介绍过。这里在添加三个界面: MainTitleBar ControlTabWidget ControlTreeWidget 三个UI,然后再将这三个UI布局到MainWindow界面上。

  1. 添加新UI文件

  2. 选择界面模板为widget

  3. 设置类名MainTitleBar,同时将文件放置到titlebar目录(该目录自己创建)

  4. 将该界面添加到项目中

  5. QT自动创建一个maintitlebar命名的UI,cpp 和h文件,并且放置到了指定的目录

  6. 同样的方式创建 ControlTabWidget 和 ControlTreeWidget 放置到 maincontent 目录

(二)添加资源文件

在UI界面设计的时候,我们有时候会使用到图片,字体还有一些其他的资源,我们可以通过添加资源的方式将他们添加到项目中,在使用的时候就可以直接使用。

  1. 将资源文件复制到工程目录res目录下:

  2. 添加Resource File

  3. 设置位置,这里设置res

  4. 将资源文件添加到工程

  5. 添加资源文件

  6. 加载需要使用到的图片资料

(三)添加类文件

如果只需要添加一个类文件,但是不需要添加UI界面,可以这么实现。下面在titlebar目录下添加一个TitleBar类

  1. 添加C++ class

  2. 设置类名字及放置目录

  3. 添加到工程里

  4. QtCreator 自动将文件添加到了指定的目录

总结

本章演示了资源文件的添加,C++ 类的添加以及UI界面的添加。这里我们总共已经有 mainwindow ControlTabWidget ControlTreeWidget maintitlebar 4个UI界面。以及一些图片资源。

下一章演示将所有界面上的内容布局到 mainwindow 上,并且可以自适应窗口大小的变化。

工程文件名:page_sample_01.rar

完整工程下载地址,请到 liwen01 微信公众号中回复: QT 获取

---------------------------End---------------------------
长按识别二维码
关注 liwen01 公众号

Qt5.9 UI设计(三)——添加UI、类及资源文件的更多相关文章

  1. NeHe OpenGL教程 第三十八课:资源文件

    转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...

  2. 好看的UI设计网站 www.ui.cn 和 插画网站 www.pixiv.net 千图网,界面很不错~

    http://www.ui.cn/?t=share#project http://www.pixiv.net/ http://www.flaticon.com/ www.58pic.com 那张 给人 ...

  3. 添加ASP.NET网站资源文件夹

    ASP.NET应用程序包含7个默认文件夹,分别为Bin.APP_Code.App_GlobalResources.App_LocalResources.App_WebReferences.App_Br ...

  4. 在javaweb中通过servlet类和普通类读取资源文件

    javaweb有两种方式读取资源文件 在Servlet中读取,可以使用servletContext,servletContext可以拿到web所有的资源文件,然后随便读,但是这种方法不常用,尽量少在S ...

  5. Android 添加shape, selector等资源文件

    右键点击drawable文件夹,选择new -> Drawable Resource file 在弹出的New Resource file界面中,将Root element定义为shape,就可 ...

  6. 使用Python库pyqt5制作TXT阅读器(一)-------UI设计

    项目地址:https://github.com/pikeduo/TXTReader PyQt5中文手册:https://maicss.gitbook.io/pyqt-chinese-tutoral/p ...

  7. UI设计初学者如何避免走弯路?

    对于初学UI设计的人而言,可能对UI具体是做什么,或者自己是否能顺利转行胜任这样的岗位存在一定的顾虑,今天我们就来重点说说UI是做什么的,以及想学UI到底要如何避免走弯路,快速的学成. 问题一:UI设 ...

  8. UI设计中的48dp定律【转】

    有朋友建议我偶尔写写技术类的文章,所以我打算开始穿插性的写一些偏技术方面的科普文章,尽量往小白能看懂的方向写,今天我来讲讲UI设计中的48dp定律. 那么先说说什么是dp ?其实对于一个非技术人员要把 ...

  9. GUI设计和UI设计有什么区别?

    首先从技术的角度分析两者处于包含与被包含的关系. GUI=Graphical User Interface,是指在计算机出现后,在屏幕上使用图形界面来帮助(User)与机器打交道用的界面接口,泛指在计 ...

  10. ui设计的好网站(转载)

    设计师网址导航  http://hao.uisdc.com/ 站酷 国外: Dribbble - Show and tell for designers.Behance 这两个网站就够了啊 ————— ...

随机推荐

  1. postman——请求与相应

    一.新建一个项目 直接点击左边栏上面的添加目录图标来新增一个根目录,这样就等于新建了一个项目,我们可以把一个项目或一个模块的用例都存放在这个目录之下,并且在根目录之下我们还可以在建立子目录来进行功能用 ...

  2. 解决 git中用vim编写文件时,无法写进文字字母以及光标无法移到最右边的问题

    解决方法:可以切换到英文输入法,然后按'a' 或者 'i'  或者 'o' 或者's'  等.s好像会删掉一个字母.o会使光标移到文末.

  3. react路由权限v6

    方法 1.模拟vue的路由拦截(未尝试) 2.进入页面拦截(模拟后台管理系统) route v6常用属性 页面梳理 路由表 公共路由 权限路由 layout(+权限判定) 登录 页面布局 路由表 点击 ...

  4. 华为云API Explorer:自动化运维的得力助手

    华为云API Explorer为开发者提供一站式API解决方案统一平台,集成华为云服务所有开放API,支持全量快速检索.可视化调试.帮助文档.代码示例等能力,帮助开发者快速学习API,使用API开发代 ...

  5. 加快脑动脉瘤检测,AI来了

    摘要:华为云EI创新孵化Lab联合华中科技大学电信学院.华中科技大学同济医学院附属协和医院放射科在放射学领域的国际顶级期刊Radiology(<放射学>)上共同发表了最新研究成果. 日前, ...

  6. 云小课 | 华为云KYON之ELB混合负载均衡

    摘要:本文介绍在华为云KYON(Keep Your Own Network)企业级云网络解决方案中,弹性负载均衡服务提供混合负载均衡功能,支持使用公有云的负载均衡绑定华为云上和IDC,实现云上云下业务 ...

  7. “pip不是内部或外部命令,也不是可运行的程序或批处理文件” 到底有多么神秘

    摘要:pip不是内部或外部命令,也不是可运行的程序或批处理文件到底有多么神秘? 本文分享自华为云社区<揭开「pip不是内部或外部命令,也不是可运行的程序或批处理文件」的神秘面纱>,作者:A ...

  8. CNCF即将推出平台成熟度模型丨亮点导览

    今年年初,云原生计算基金会(CNCF)发布了平台白皮书(点击这里查看中文版本).白皮书描述了云计算内部平台是什么,以及它们可以为企业提供的价值. 为了进一步挖掘平台对企业的价值,为企业提供一个可以评估 ...

  9. Dependencies unknown

    Dependencies unknown 由父POM 托管 <properties> <boot-admin.version>2.3.0</boot-admin.vers ...

  10. WebService rwsp:NoRunningCommunicationPointAvailable

    SoapUI 调WebService 报 No running communication point is configured to process this request. 错误 检查入参是否 ...