0—QT ui界面一览

2025.2.26,感谢gpt4

1.控件盒子

1. Layouts(布局)

布局控件用于组织界面上的控件,确保它们的位置和排列方式合理。

  • Vertical Layout(垂直布局)

:将控件按垂直方向排列。

建议:适合表单、设置面板、按钮排列等。比如,登录界面常用这个布局,将输入框和按钮垂直排列。

  • Horizontal Layout(水平布局)

:将控件按水平方向排列。

建议:适用于工具栏、菜单栏、水平按钮组等。比如,导航栏、工具栏等,确保元素横向排列,节省垂直空间。

  • Grid Layout(网格布局)

:按照网格形式排列控件。

建议:适用于复杂的表单、数据表格、网格状的图标展示。比如,Excel 样式的表格或者有多个输入项的复杂表单。

  • Form Layout(表单布局)

:适合标签和输入控件排列。

建议:非常适合需要标签和输入框并排显示的场景,如注册表单、用户设置界面等。


2. Spacers(间隔)

间隔控件用于调整控件之间的距离,避免界面看起来拥挤。

  • Horizontal Spacer(水平间隔)

:增加水平间隔。

建议:适用于水平布局中控件之间需要留空的地方。例如,在按钮组之间添加间隔,使它们看起来不那么紧凑。

  • Vertical Spacer(垂直间隔)

:增加垂直间隔。

建议:在垂直排列的控件中,如表单或列表,使用垂直间隔来增加控件之间的可读性,避免过于拥挤。


3. Buttons(按钮)

按钮是用户交互的关键控件,用于触发事件或操作。

  • Push Button(推按钮)

:普通按钮。

建议:适用于任何触发事件的场景,如提交按钮、确认按钮等,设计时要确保按钮的文本简洁明确。

  • Tool Button(工具按钮)

:带有图标的按钮。

建议:适用于工具栏中的按钮,简洁而功能明确,配合图标使用效果更好。

  • Radio Button(单选按钮)

:让用户在多个选项中选择一个。

建议:适用于选择项互斥的场景,例如选择性别、支付方式等,确保一组选项不同时选中。

  • Check Box(复选框)

:允许用户选择多个选项。

建议:适用于允许多选的情况,例如设置项或多项选择问题,保持复选框的间隔,避免视觉拥挤。

  • Command Link Button(命令链接按钮)

:链接式按钮。

建议:适用于提示用户执行某个操作或切换到某个界面的场景,常见于对话框中,用于引导用户进行操作。


4. Item Views(项视图)

这些控件用于展示结构化的数据,例如列表、树形结构等。

  • List View(列表视图)

:显示列表数据。

建议:适合用于简单的条目展示,如文件列表、消息列表等。如果数据较少,可以选择这个控件。

  • Tree View(树视图)

:展示层级结构数据。

建议:适用于文件管理器、目录树等结构化数据展示,例如文件夹中的文件和子文件夹。让用户更直观地看到数据层级。

  • Column View(列视图)

:列形式展示数据。

建议:适合展示分列的数据,如联系人信息表、商品展示列表等。


5. Containers(容器)

容器控件用于将多个控件组织在一起,形成模块化的界面。

  • Group Box(分组框)

:将多个控件分组在一起。

建议:适用于将控件分块,增强界面的结构感。例如,将相关设置放在一个可折叠的分组框中。

  • Scroll Area(滚动区域)

:提供滚动区域用于显示更多内容。

建议:适用于内容较多且超出显示区域的情况,如设置面板、长表单等,确保用户能滚动查看所有内容。


6. Input Widgets(输入控件)

这些控件主要用于接收用户的输入或提供选择。

  • Combo Box(下拉框)

:让用户从一组选项中选择。

建议:适用于有限的选择项,例如国家选择、类别选择等,不占用过多空间。

  • Font Combo Box(字体选择框)

:让用户选择字体。

建议:适合设计类应用,如文本编辑器,允许用户选择字体。

  • Line Edit(单行文本框)

:输入单行文本。

建议:适用于较短的文本输入场景,如用户名、邮箱等。使用时可以设置合适的提示信息(PlaceHolder)。

  • Text Edit(多行文本框)

:输入多行文本。

建议:适用于输入较长的内容,例如评论框、留言板。

  • Spin Box(数值输入框)

:输入数字。

建议:适用于需要限制数值范围的输入场景,如数量选择、年龄设置等,提升用户体验。

  • Double Spin Box(浮动数值输入框)

:支持浮动小数点的数值输入。

建议:适用于需要小数输入的场景,如价格输入、测量值等。

  • Time Edit(时间输入框)

:输入时间。

建议:适用于涉及时间设置的场景,例如计时器、时间选择器。

  • Date Edit(日期输入框)

:输入日期。

建议:适用于事件日期、生日输入等需要选择日期的功能。

  • Dial(旋钮控件)

:旋转控制器,选择数值。

建议:适用于调节音量、亮度等功能,增强交互感。

  • Horizontal/Vertical Slider(水平/垂直滑块)

:通过滑块选择数值。

建议:适用于调节音量、亮度、进度条等,直观且易于操作。

  • Key Sequence Edit(键序列编辑框)

:捕获键盘输入序列。

建议:适用于快捷键设置功能,允许用户自定义快捷键。


7. Display Widgets(显示控件)

这些控件用于显示静态信息或提供视觉反馈。

  • Label(标签)

:显示文本或图像。

建议:适合标题、描述文本或图片展示,使用时确保标签文本简洁明了。

  • Text Browser(文本浏览器)

:显示多行文本,支持富文本格式。

建议:适用于显示长文本、富文本或带有链接的内容,如帮助文档、新闻资讯。

  • Graphics View(图形视图)

:显示图形内容。

建议:适合图形化应用,如绘图工具、数据可视化展示等,增强用户互动体验。

  • Calendar Widget(日历控件)

:显示日历并选择日期。

建议:适合日程安排、日期选择器等功能,清晰显示日期和月份。

  • LCD Number(LCD 数字显示控件)

:数字显示控件,类似于 LCD 屏幕。

建议:适合用于显示实时数字信息,如计时器、计数器、进度条等。

  • Progress Bar(进度条)

:显示任务的进度。

建议:适用于文件下载、长时间运行的操作,帮助用户了解任务进展。

  • Horizontal/Vertical Line(分隔线)

:在界面中插入水平或垂直分隔线。

建议:适用于界面分隔,增强结构感,保持界面整洁。

  • OpenGL Widget(OpenGL 控件)

:显示 3D 图形。

建议:适用于图形密集型应用,如游戏、3D 绘图工具等。

  • QQuickWidget(QQuick 控件)

:显示 QML 内容。

建议:适用于动态界面开发,特别是结合 QML 与 C++ 的应用程序,创建现代化的界面。

中间布局的展示就不多说了

右侧:

2.对象查看器

右侧的界面是 Qt Creator 中的 属性编辑器,用于查看和编辑当前选中控件的属性。这个界面主要包含两个部分:

 对象查看器(Object Explorer)

这个部分显示了当前 UI 界面中的控件层级结构,你可以选择不同的控件进行编辑。它分为两个主要区域:

  • MainWindow:这是当前选中的控件,可以看到窗口中的 centralWidget、menubar(菜单栏)、statusbar(状态栏)等子控件

  • MainWindow (QMainWindow): 这是一个典型的Qt窗口,通常用作应用程序的主窗口。它提供了可以包含菜单栏、工具栏、状态栏等区域的框架。你可以通过添加不同的小部件(widgets)来构建应用程序的用户界面。

  • centralwidget (QWidget): QWidget是Qt中所有用户界面元素的基类。centralwidget通常是QMainWindow的核心部件,它是窗口的主要内容区域。在centralwidget中可以添加各种其他小部件,如按钮、文本框、图像等。

  • 这些组件通过继承关系呈现,QMainWindow继承自QWidget,而QMenuBarQStatusBar是专门用来增加功能的子类。

  • menubar (QMenuBar): 这是Qt应用程序中的菜单栏,它显示在窗口的顶部。通过菜单栏,用户可以访问各种功能,如文件操作、编辑功能等。它包含多个菜单项,每个菜单项下可能有多个操作。

  • statusbar (QStatusBar): 这是Qt窗口中的状态栏,用来显示应用程序的当前状态或提示信息。通常状态栏会显示一些文本信息,如文件保存状态、鼠标位置或加载进度等。

  • 你可以通过点击不同的控件,在下方的 属性编辑器 中查看和修改它们的属性。

3. 属性编辑器(Property Editor)

这部分显示的是 QWidget 控件的属性,涵盖了界面的一些外观、行为和功能设置。以下是这些属性的功能和建议:

  • enabled

:控制控件是否启用。

建议:如果设置为禁用,则控件不可交互,适用于某些暂时不需要用户操作的场景,例如禁用某些按钮直到某个条件满足。

  • geometry

:设置控件的位置信息和大小。

例如:[ (0, 0), 976 x 661 ] 表示控件的位置在 (0, 0),并且控件大小为 976x661 像素。

建议:你可以根据需要调整大小和位置,例如设置合适的大小来适应屏幕或容器大小。

  • sizePolicy

:控制控件如何自适应大小。

建议:设置为 Preferred,表示控件将根据父容器的大小变化来自动调整大小。适用于大多数控件,如果需要更强的灵活性,可以尝试调整为 Expanding 或 MinimumExpanding。

感谢:qt 如何设计好布局和漂亮的界面。_qt 界面-CSDN博客

🔵Fixed:控件不能放大或者缩小,控件的大小就是它的sizeHint。

🔵Minimum:控件的sizeHint为控件的最小尺寸。控件不能小于这个sizeHint,但是可以放大。

🔵Maximum:控件的sizeHint为控件的最大尺寸,控件不能放大,但是可以缩小到它的最小的允许尺寸。

🔵Preferred:控件的sizeHint是它的sizeHint,但是可以放大或者缩小。

🔵Expandint:控件可以自行增大或者缩小。

🔵MinimumExpanding:控件的sizeHint是它的sizeHint,但是可以使用额外的空间,也就是它会尽可能得到更多的空间。

🔵Ignored:控件的sizeHint不起作用,它会尽可能得到更多的空间。

  • minimumSize

maximumSize:设置控件的最小和最大尺寸。

建议:用于限制控件的尺寸,避免它在某些布局中拉伸过大或过小。

  • sizeIncrement

:定义控件在调整大小时的增量。通常用于控件在自适应大小时的步进值。设置的值会影响控件在扩展时的最小单位增量。

例如,sizeIncrement: 10 x 10 表示每次控件扩展时,宽度和高度都会增加 10 像素。

建议:如果你希望控件的大小调整非常精确或者希望用户拖动控件时能够按固定步长来调整尺寸,可以设置合适的 sizeIncrement 值。对于动态界面,可以将其设置为更大的增量,而对于固定布局的界面,可能需要精细的增量值来更好地控制界面的布局。

  • baseSize

:设置控件的基础大小,即在没有额外的布局调整时的默认大小。baseSize 用于描述控件的初始尺寸,它通常影响控件在不同布局中如何分配空间。

例如,baseSize: 100 x 100 表示控件的默认大小为 100 像素宽和 100 像素高。

建议:可以根据实际需求设置控件的初始大小。若想要控件在布局中以固定的初始大小显示,可以设置 baseSize,这样控件会优先采用此尺寸。如果需要自适应的布局效果,可以通过调整其他尺寸属性来代替使用 baseSize。

  • palette

:控件的调色板,定义了控件的前景色、背景色等。

建议:如果想要自定义控件的颜色,可以通过修改这个属性设置背景色、文本颜色等。

  • font

:设置控件的字体样式。

建议:确保控件的字体符合应用的整体风格,特别是在需要显示大量文本时,选择清晰易读的字体。

  • cursor

:设置控件的鼠标指针样式。

建议:根据控件的功能,设置适合的指针样式,比如设置为 PointingHandCursor 用于按钮或链接。

  • mouseTracking

:启用鼠标跟踪。

建议:启用时,鼠标事件将不再需要按下按钮就能触发。适用于需要实时跟踪鼠标位置的场景,例如绘图应用。

  • tabletTracking

:控制平板设备的触摸事件跟踪。

建议:如果你的应用需要支持触摸设备,可以开启此选项。

  • focusPolicy

:设置控件的焦点策略。

建议:NoFocus 表示控件不接受焦点,StrongFocus 则表示控件可以接收焦点并响应键盘事件,适用于表单控件。

  • contextMenuPolicy

:设置控件的右键菜单策略。

建议:DefaultContextMenu 表示控件显示默认的上下文菜单,适用于大多数控件。如果有自定义的右键菜单,可以设置为 CustomContextMenu。

  • acceptDrops

:设置控件是否接受拖放操作。

建议:如果控件需要支持拖放功能(如拖放文件到界面中),可以启用此选项。

  • windowTitle

:设置窗口的标题。

建议:在多窗口应用中,设置合适的窗口标题可以帮助用户识别当前窗口的功能或状态。

  • windowIcon

:设置窗口的图标。

建议:为应用设置一个图标,提升视觉效果,帮助用户在任务栏和应用切换中区分应用。

  • windowOpacity

:设置窗口的透明度。

建议:设置透明度可以带来更具现代感的视觉效果,通常设置为 1.0 表示完全不透明,设置小于 1.0 会使窗口部分透明。

  • toolTip

:设置控件的工具提示文本。

建议:为控件添加简洁的提示,帮助用户理解控件的用途。特别适用于图标按钮等。

  • toolTipDuration

:设置工具提示显示的时长。

建议:如果提示信息较长,可以适当延长显示时间;如果是简单提示,保持默认时长即可。

  • statusTip

:设置控件的状态提示。

建议:状态提示通常显示在状态栏,用于显示当前控件的状态或操作结果。

  • whatsThis

:设置控件的详细帮助信息,用户可以通过右键菜单访问。

建议:如果控件比较复杂或功能较多,提供帮助信息会大大提升用户体验。

  • accessibleName

accessibleDescription:为无障碍用户提供名称和描述。

建议:如果应用需要支持屏幕阅读器等无障碍功能,设置这些属性将帮助视力障碍的用户更好地理解控件。

  • layoutDirection

:设置控件的布局方向,选择从左到右(LeftToRight)或从右到左(RightToLeft)。

建议:根据目标语言和区域设置适当的布局方向,特别是支持阿拉伯语等从右到左书写的语言时。

  • autoFillBackground

:设置控件是否自动填充背景。

建议:如果控件有透明背景,启用此属性可以确保背景颜色被填充,避免显示问题。

  • styleSheet

:设置控件的自定义样式表。

建议:使用 CSS 样式表自定义控件的外观,控制控件的颜色、边框、字体等。

  • locale

:设置语言环境,影响日期、时间、数字格式等。

建议:适用于多语言应用,帮助你自动根据用户地区选择合适的格式。

  • windowFilePath

:窗口的文件路径。

建议:通常用于文件对话框,显示文件路径。

  • inputMethodHints

:设置输入法提示。

建议:如果你的应用需要支持特定的输入法类型,可以通过此选项配置。

  • windowModality

:设置窗口的模态类型,选择是否允许与其他窗口交互。

建议:如果需要强制用户处理某个窗口,可以设置为 WindowModal,否则选择 NonModal。

右下角显示的是 QMainWindow 控件的一些高级属性,以下是每个属性的功能和建议:

  • iconSize

:设置工具按钮图标的大小,当前设置为 30 x 30。

建议:适用于工具栏按钮,调整图标的大小可以确保界面在不同分辨率下的清晰度和可用性。

  • toolButtonStyle

:设置工具按钮的显示样式。

选项

:启用或禁用窗口中的动画效果。

建议:启用动画效果可以使控件和窗口的过渡更加平滑,提升用户体验,特别是在窗口切换或状态变化时。

  • documentMode

:设置窗口是否为文档模式。

建议:启用此选项时,窗口将自动处理多个文档切换,适用于文本编辑器或多文档应用。

  • tabShape

:设置选项卡的形状。

选项

:控制是否启用停靠窗口嵌套功能。

建议:如果需要让停靠窗口能够嵌套到一起,可以启用此选项,使得界面更加灵活。

  • dockOptions

:设置停靠窗口的相关选项。

选项

:在 macOS 上启用标题栏和工具栏的统一样式。

建议:如果你的应用针对 macOS,启用此选项可以让界面符合 macOS 的标准界面设计。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/24722.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

普中单片机-51TFT-LCD显示屏(1.8寸 STM32)

普中官方论坛: http://www.prechin.cn/gongsixinwen/208.html 普中科技-各型号开发板资料链接:https://www.bilibili.com/read/cv23681775/?spm_id_from333.999.0.0 27-TFTLCD显示实验_哔哩哔哩_bilibili 2.程序烧录 2.1设置彩屏驱动 3.实验效果

嵌入式开发工程师笔试面试指南-Linux系统移植

1 Linux内核启动流程 引导加载阶段 计算机通电后,首先由 BIOS 或 UEFI 进行初始化,完成硬件自检等操作。 找到可启动设备,读取其第一个扇区的 MBR,MBR 中的引导加载程序(如 GRUB)被加载到内存并运行。 内…

图扑数字孪生:解锁压缩空气储能管控新高度

​在能源转型的关键时期,压缩空气储能凭借其独特优势,成为解决可再生能源间歇性问题、保障可靠能源供应的重要技术。图扑软件(Hightopo)充分发挥其在 Web 2D&3D 可视化领域的技术专长,打造出先进的数字孪生压缩空气…

Redis 高可用性:如何让你的缓存一直在线,稳定运行?

🎯 引言:Redis的高可用性为啥这么重要? 在现代高可用系统中,Redis 是一款不可或缺的分布式缓存与数据库系统。无论是提升访问速度,还是实现数据的高效持久化,Redis 都能轻松搞定。可是,当你把 …

AI 编码 2.0 分析、思考与探索实践:从 Cursor Composer 到 AutoDev Sketch

在周末的公司【AI4SE 效能革命与实践:软件研发的未来已来】直播里,我分享了《AI编码工具 2.0 从 Cursor 到 AutoDev Composer》主题演讲,分享了 AI 编码工具 2.0 的核心、我们的思考、以及我们的 AI 编码工具 2.0 探索实践。 在这篇文章中&am…

Qt Creator + CMake 构建教程

此教程基于: Qt 6.7.4Qt Creator 15.0.1CMake 3.26.4 Qt 6 以下的版本使用 CMake 构建可能会存在一些问题. 目录 新建窗体工程更新翻译添加资源软件部署(Deploy) 此教程描述了如何一步步在 Qt Creator 中使用 CMake 构建应用程序工程. 涉及 新建窗体工程, 更新翻译, 添加资源, …

锂电池保护板测试仪:电池安全的守护者与创新驱动力

在新能源产业蓬勃发展的今天,锂电池以其高能量密度、长循环寿命和环保特性,成为电动汽车、无人机、便携式电子设备等领域不可或缺的能量来源。然而,锂电池的安全性和稳定性一直是行业关注的焦点。为了确保锂电池在各种应用场景下的可靠运行&a…

岳阳市美术馆预约平台(小程序论文源码调试讲解)

第4章 系统设计 一个成功设计的系统在内容上必定是丰富的,在系统外观或系统功能上必定是对用户友好的。所以为了提升系统的价值,吸引更多的访问者访问系统,以及让来访用户可以花费更多时间停留在系统上,则表明该系统设计得比较专…

【Java】I/O 流篇 —— 转换流与序列化流

目录 转换流原理InputStreamReader 转换输入流构造方法代码示例 OutputStreamWriter 转换输出流构造方法代码示例 练习 序列化流序列化流反序列化流**serialVersionUID**基本概念作用使用方式transient 关键字注意事项 转换流 原理 转换流属于字符流,是字符流和字节…

Mac 版 本地部署deepseek ➕ RAGflow 知识库搭建流程分享(附问题解决方法)

安装: 1、首先按照此视频的流程一步一步进行安装:(macos版)ragflowdeepseek 私域知识库搭建流程分享_哔哩哔哩_bilibili 2、RAGflow 官网文档指南:https://ragflow.io 3、RAGflow 下载地址:https://github.com/infi…

计算机三级网络技术备考

#subtotal 1Mbps1024kb128KB12.8M/s #1024B1KB 1024KB1MB 1024MB1GB #路由器的5G信号和平常的波长不同(5G的穿墙性能差) #局域网LAN(一公里内——构成集线机、交换机、同轴电缆) #城域网MAN(几公里到几十公里——光…

IDEA 2024.1 最新永久可用(亲测有效)

今年idea发布了2024.1版本,这个版本带来了一系列令人兴奋的新功能和改进。最引人注目的是集成了更先进的 AI 助手,它现在能够提供更复杂的代码辅助功能,如代码自动补全、智能代码审查等,极大地提升了开发效率。此外,用…

30 分钟从零开始入门 CSS

前言 最近也是在复习,把之前没写的博客补起来,之前给大家介绍了 html,现在是 CSS 咯。 30分钟从零开始入门拿下 HTML_html教程-CSDN博客 一、CSS简介:给网页“化妆”的神器 CSS(层叠样式表)就像“化妆“&a…

Game Maker 0.11更新:构建社交竞速游戏并增强玩家互动

在这三部分系列中,我们将介绍如何实现Game Maker 0.11中一些最激动人心的新功能。 欢迎来到我们系列文章的第一篇,重点介绍了The Sandbox Game Maker 0.11更新中的新特性。 The Sandbox Game Maker 0.11是一个多功能工具,帮助创作者通过游戏…

软件供应链安全工具链研究系列——RASP自适应威胁免疫平台(上篇)

1.1 基本能力 RASP是一种安全防护技术,运行在程序执行期间,使程序能够自我监控和识别有害的输入和行为。也就是说一个程序如果注入或者引入了RASP技术,那么RASP就和这个程序融为一体,使应用程序具备了自我防护的能力,…

2024信息技术、信息安全、网络安全、数据安全等国家标准合集共125份。

2024信息技术、信息安全、网络安全、数据安全等国家标准合集,共125份。 一、2024信息技术标准(54份) GB_T 17966-2024 信息技术 微处理器系统 浮点运算.pdf GB_T 17969.8-2024 信息技术 对象标识符登记机构操作规程 第8部分:通用…

HTTP与网络安全

🍅 点击文末小卡片 ,免费获取网络安全全套资料,资料在手,涨薪更快 一、HTTPS和HTTP有怎样的区别呢?HTTPS HTTP SSL/TLS(SSL或者TLS) HTTP:应用层 SSL/TLS:协议中间层 …

ASP.NET Core 8.0学习笔记(二十八)——EFCore反向工程

一、什么是反向工程 1.原则:DBFirst 2.反向工程:根据数据库表来反向生成实体类 3.生成命令:Scaffold-DbContext ‘连接字符串’ 字符串示例: Server.;DatabaseDemo1;Trusted_Connectiontrue; MultipleActiveResultSets true;Tru…

Unity基础——资源导出分享为Unity Package

一.选中要打包的文件夹,右击,点击Exporting package 二.勾选 Include Dependencies,点击Export Include Dependencies:代表是否包含资源依赖的选项 三.选择保存的位置,即可生成Unity package 最终形成文件&#xff1a…

kafka-leader -1问题解决

一. 问题: 在 Kafka 中,leader -1 通常表示分区的领导者副本尚未被选举出来,或者在获取领导者信息时出现了问题。以下是可能导致出现 kafka leader -1 的一些常见原因及相关分析: 1. 副本同步问题: 在 Kafka 集群中&…