0—QT ui界面一览

news/2025/2/27 9:23:53

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.niftyadmin.cn/n/5869872.html

相关文章

逆向pyinstaller打包的exe软件,获取python源码(6)

在ailx10:逆向pyinstaller打包的exe软件,获取python源码(3)中,我们逆向出了主程序,但是对其依赖的其他python文件并没有给出逆向方法,实际上非常简单,在PYZ-00.pyz_extracted 文件夹中,只要逆向…

YOLOv8架构中的SAConv空洞卷积机制:性能优化与未来发展方向

文章目录 YOLOv8改进 | SAConv可切换空洞卷积1. 空洞卷积(Dilated Convolution)简介空洞卷积的优势: 2. SAConv可切换空洞卷积的提出SAConv的工作原理:SAConv的关键特性: 3. YOLOv8中SAConv的实现3.1 SAConv模块设计3.…

服务器迁移记录【腾讯云-->阿里云】

准备工作 压缩/root /usr/local/nginx /data三个目录到zip,并下载到本地。 zip root.zip /root zip nginx.zip /usr/local/nginx zip data.zip /datasz root.zip sz nginx.zip sz data.zip连接mysql数据库,导出数据库结构与数据到dzs_mysql.sql 安装l…

基于51单片机的智能家居温湿度监测系统proteus仿真

地址:https://pan.baidu.com/s/15WDwFiYXlWhavhMc0MAB2w 提取码:1234 仿真图: 芯片/模块的特点: AT89C52/AT89C51简介: AT89C52/AT89C51是一款经典的8位单片机,是意法半导体(STMicroelectron…

JVM生产环境问题定位与解决实战(二):JConsole、VisualVM到MAT的高级应用

生产问题定位指南:几款必备的可视化工具 引言 在上一篇文章中,详细的介绍了JDK自带的一系列命令行工具,,如jps、jmap、jstat、jstack以及jcmd等,这些工具为排查和诊断Java虚拟机(JVM)问题提供…

在线VS离线TTS(语音合成芯片)有哪些优势-AIOT智能语音产品方案

离线 TTS 存在语音质量欠佳、音色选择有限、语言支持单一更新困难、占用资源多、适应性差、难以个性化定制等痛点 01更新维护困难 由于是离线模式,难以及时获取最新的语音数据和算法更新,无法得到持续改进。 02占用本地资源 需要在设备本地存储较大的…

【Spring】统一功能处理

目录 前言 拦截器 什么是拦截器? 拦截器的使用 自定义拦截器 注册并配置拦截器 拦截器详解 拦截路径 拦截器执行流程 适配器模式 统一数据返回格式 优点 统一异常处理 前言 在前面中,我们已经学习了spring中的一些常用操作,那么…

Qt QScrollArea 总结

Qt QScrollArea 总结 1. 功能概述 滚动容器:用于显示超出视口(Viewport)范围的内容,自动提供滚动条。子部件管理:可包裹单个子部件(通过 setWidget()),当子部件尺寸 > 视口时&a…