💪 图像算法工程师,专业从事且热爱图像处理,图像处理专栏更新如下👇:
📝《图像去噪》
📝《超分辨率重建》
📝《语义分割》
📝《风格迁移》
📝《目标检测》
📝《图像增强》
📝《模型优化》
📝《模型实战部署》
📝《图像配准融合》
📝《数据集》
📝《高效助手》
📝《C++》
📝《Qt》
本教程主要介绍Qt软件中常用的控件:Scroll Area,Tool Box,Tab Widget,stacked Widget,combo Box,Front Combo Box,Line Edit,Text Edit,Plain Text Edit,Spin Box,Double Spin Box,Time Edit,Date/Time Edit,Horizontal Scroll Bar,Vertical Scroll Bar,Horizontal Slider,Vertical Slider,Label。每个控件都会给出界面效果。
目录
- 一、Scroll Area (QScrollArea)
- 二、Tool Box (QToolBox)
- 三、Tab Widget (QTabWidget)
- 四、Stacked Widget (QStackedWidget)
- 五、Combo Box (QComboBox)
- 六、Font Combo Box (QFontComboBox)
- 七、Line Edit (QLineEdit)
- 八、Text Edit (QTextEdit)
- 九、Plain Text Edit (QPlainTextEdit)
- 十、Spin Box (QSpinBox)
- 十一、Double Spin Box (QDoubleSpinBox)
- 十二、Time Edit (QTimeEdit)
- 十三、Date/Time Edit (QDateTimeEdit)
- 十四、Horizontal Scroll Bar (QScrollBar)和Vertical Scroll Bar (QScrollBar)
- 十五、Horizontal Slider (QSlider)和Vertical Slider (QSlider)
- 十六、Label (QLabel)
- 十七、总结
一、Scroll Area (QScrollArea)
QScrollArea 是一个可以在其内部显示大尺寸内容的控件,尤其适合处理那些比显示区域大的内容。例如,显示图像、长列表或复杂的UI组件。可以通过设置子控件的大小并启用滚动条来使用它。QScrollArea 支持自动显示垂直和水平滚动条,也可以自定义显示滚动条的行为。
常见用法:在窗口中嵌入一个包含大图或动态内容的区域。
Qt软件中创建QScrollArea见下:
二、Tool Box (QToolBox)
QToolBox 提供一个多项折叠面板的控件。每个面板包含一个标题和可折叠的内容,点击标题时会展开或折叠该面板。适合用来实现类似设置面板或工具面板的功能,用户可以在多个不同的区域间快速切换。
常见用法:开发设置界面时,帮助用户在不同的配置选项中进行切换。
Qt软件中创建QToolBox方法见下:
在QToolBox中插入选项的方法见下:
三、Tab Widget (QTabWidget)
QTabWidget 提供一个标签式的界面,可以在多个页面之间进行切换,类似浏览器或多功能设置面板的布局。每个标签对应一个页面,可以通过点击标签切换不同的内容。适合用来组织一组功能相关的界面。
常见用法:设计多页面界面,或者提供多个功能的页面切换。
QTabWidget 控件创建方法见下:
新增选项方法见下:
四、Stacked Widget (QStackedWidget)
QStackedWidget 允许在同一显示区域堆叠多个控件,并通过程序控制显示哪个控件。每次只能显示一个控件,适合实现“卡片式”UI,常与按钮或菜单结合使用,用户点击不同的按钮时切换显示的控件。
常见用法:实现多页面切换,或者动态内容展示。
4.1 QStackedWidget 控件创建
QStackedWidget 控件创建方法见下:
新增页的方法见下:
4.2 通过信号槽按钮查看
上面步骤中将其它控件分别放入到了QStackedWidget窗口中,点击左右箭头可查看对应的页面,为了在界面上通过按钮选项控制显示的页面,新增三个QPushButton,见下:
4.3 查看页面对应Index
后面按钮控制每个页面的对应关系,需要知道页面的索引号,查看页面索引的方法见下:
4.4 信号槽连接代码
使用信号槽,按钮控制显示某窗口的添加代码见下:
4.5 效果展示
点击按钮,显示对应页面的效果见下:
五、Combo Box (QComboBox)
QComboBox 是一个下拉框,允许用户从多个选项中选择一个。它有一个文本框和一个下拉菜单,支持显示文本、图像或两者的组合。可以动态地添加或删除选项。通常用于用户需要从列表中选择一个值的场景。
常见用法:选择列表、设置界面中选择性选项等。
5.1 创建下拉框
创建下拉框方法见下:
5.2 设置下拉框
设置下拉框方法见下:
5.3 通过按钮控制下拉框中显示
可以通过信号槽点击一个按钮,下拉框显示对应的文本或实现对应的功能,实现见下:
六、Font Combo Box (QFontComboBox)
QFontComboBox 是一个特殊的 QComboBox(字体下拉框),用于选择字体。它展示系统中的字体列表,并允许用户选择字体名称。常用于文本编辑器或任何需要改变字体的应用。
常见用法:文字编辑器中提供字体选择功能。
QFontComboBox创建方法见下:
七、Line Edit (QLineEdit)
QLineEdit 是一个单行文本输入框。它用于让用户输入单行文本,并可以附加验证、输入限制和提示文本。支持单行编辑,也可以通过设置属性来禁止编辑或隐藏文本。
常见用法:搜索框、用户名输入框等。
QLineEdit 创建方法见下:
八、Text Edit (QTextEdit)
QTextEdit 是一个多行文本编辑控件,支持富文本格式(如加粗、斜体、字体颜色等)。它非常适合编辑大段文本,如文章、邮件、富文本内容等。
常见用法:文本编辑器、富文本内容显示等。
QTextEdit控件创建方法见下:
九、Plain Text Edit (QPlainTextEdit)
QPlainTextEdit 是一个类似于 QTextEdit 的多行文本控件,但它只处理纯文本,不支持富文本。适合处理大文件文本或日志文件的显示与编辑。
常见用法:显示日志信息、文本数据处理等。
QPlainTextEdit 控件创建方法见下:
十、Spin Box (QSpinBox)
QSpinBox 是一个数字输入控件,用户可以通过点击按钮或键盘输入来选择一个整数值。它支持设置最小值、最大值和步长等属性。
常见用法:输入整数值,如数量、年龄等。
QSpinBox 控件创建方法见下:
十一、Double Spin Box (QDoubleSpinBox)
QDoubleSpinBox 是 QSpinBox 的一个变体,支持输入浮动小数值。你可以设置步长、最小值和最大值等。常用于精确度要求较高的数值输入。
常见用法:精确数字输入,如金额、温度、坐标等。
QDoubleSpinBox控件创建方法见下:
十二、Time Edit (QTimeEdit)
QTimeEdit 用于时间的选择与输入。它允许用户输入小时、分钟和秒,支持24小时和12小时格式。
常见用法:设置时间、定时器等。
QTimeEdit控件创建方法见下:
十三、Date/Time Edit (QDateTimeEdit)
QDateTimeEdit 允许用户选择日期和时间,支持日期时间的格式化。你可以指定日期时间的最小和最大范围,以及日期时间的显示格式。
常见用法:选择日期和时间,适用于调度、事件安排等场景。
QDateTimeEdit控件创建方法见下:
十四、Horizontal Scroll Bar (QScrollBar)和Vertical Scroll Bar (QScrollBar)
QScrollBar 提供一个水平滚动条,用于在内容区域中水平滚动。你可以自定义滚动条的范围、步长和滑块的外观。
常见用法:与QTextEdit、QGraphicsView等控件配合使用。
QScrollBar 提供一个垂直滚动条,用于垂直方向的内容滚动。常用于包含超大内容的区域。
常见用法:与长文本、长列表控件配合使用。
QScrollBar控件创建方法见下:
十五、Horizontal Slider (QSlider)和Vertical Slider (QSlider)
QSlider 提供一个滑块,可以让用户通过滑动来选择一个值。通常用于调整音量、亮度、速度等连续变化的数值。与 Horizontal Slider 类似,只是方向垂直,适用于垂直方向上的数值调整。
常见用法:调整设置值(如音量、亮度等)。
QSlider 控件创建方法见下:
十六、Label (QLabel)
QLabel 用于显示文本、图片或两者的组合。它通常用于显示静态内容,支持富文本格式和图片显示。
常见用法:显示标题、信息、图标等。
16.1 QLabel 显示文本和图片
QLabel 显示文本和图片的方法见下;
源文件widget.cpp脚本中添加代码见下:
16.2 QLabel 显示动态图
QLabel 显示动态图,格式为.gif,见下:
十七、总结
以上就是Qt软件中常用的控件:Scroll Area,Tool Box,Tab Widget,stacked Widget,combo Box,Front Combo Box,Line Edit,Text Edit,Plain Text Edit,Spin Box,Double Spin Box,Time Edit,Date/Time Edit,Horizontal Scroll Bar,Vertical Scroll Bar,Horizontal Slider,Vertical Slider,Label。希望能帮到你!
感谢您阅读到最后!😊总结不易,多多支持呀🌹 点赞👍收藏⭐评论✍️,您的三连是我持续更新的动力💖
关注下面「视觉研坊」,获取干货教程、实战案例、技术解答、行业资讯!