qt 开发 “控件之家“

news2024/12/23 23:16:39

本篇文章我们来描述一下Qt 控件  是qt中最基本 也是最难缠的  有种“小鬼难缠的感觉”

qt常用控件大集合

Qt是一个广泛使用的跨平台应用程序框架,它提供了许多用于构建图形用户界面(GUI)的控件。以下是一些Qt中常用的控件:

  1. QPushButton:这是一个标准的按钮控件,用户可以点击它来执行某个动作。
  2. QLabel:这是一个用于显示文本或图片的控件。它经常用于显示状态信息或作为界面上的装饰元素。
  3. QLineEdit:这是一个文本输入框控件,用户可以在其中输入和编辑文本。
  4. QComboBox:这是一个下拉列表框控件,用户可以从预定义的列表中选择一个选项。
  5. QListWidget 和 QTreeWidget:这两个控件分别用于显示列表和树形结构的数据。它们可以包含多个项目,并且每个项目都可以有自己的子项目。
  6. QTableWidget:这是一个表格控件,用于显示和编辑二维数据。
  7. QGraphicsView 和 QGraphicsScene:这两个控件一起使用,可以创建复杂的2D图形和动画。
  8. QSlider 和 QDial:这两个控件分别用于通过滑动和旋转来选择一个值。
  9. QCheckBox 和 QRadioButton:这两个控件用于显示一个可以选中或取消选中的选项。用户可以选择多个复选框,但只能选择一个单选按钮。
  10. QProgressBar:这是一个进度条控件,通常用于显示任务的完成进度。
  11. QMenuQMenuBar 和 QAction:这些控件一起使用,可以创建应用程序的菜单系统。
  12. QDockWidget:这是一个可以停靠和浮动的窗口控件,通常用于显示工具或选项。

下面 我挑几个控件来描述一下

1.pushbutton

这里面的开始和结束就是按钮

这里面TextLabel后面的部分是edit  用来输入文字

 

这里面textLabel是用来自定义标题的

使用之后效果:

 

代码实例:

#include "mainwindow.h"  
#include "ui_mainwindow.h"  
  
#include <QPushButton>  
#include <QLineEdit>  
#include <QLabel>  
#include <QHBoxLayout>  
#include <QVBoxLayout>  
#include <QDebug>  
  
MainWindow::MainWindow(QWidget *parent)  
    : QMainWindow(parent)  
    , ui(new Ui::MainWindow)  
{  
    ui->setupUi(this);  
  
    // 创建 QPushButton, QLineEdit 和 QLabel  
    QPushButton *button = new QPushButton("Show Text", this);  
    QLineEdit *lineEdit = new QLineEdit(this);  
    QLabel *label = new QLabel("Enter text below and click the button:", this);  
  
    // 创建布局管理器  
    QHBoxLayout *buttonLayout = new QHBoxLayout;  
    buttonLayout->addWidget(button);  
  
    QVBoxLayout *mainLayout = new QVBoxLayout;  
    mainLayout->addWidget(label);  
    mainLayout->addWidget(lineEdit);  
    mainLayout->addLayout(buttonLayout);  
  
    // 设置窗口的中心部件布局  
    QWidget *centralWidget = new QWidget;  
    centralWidget->setLayout(mainLayout);  
    setCentralWidget(centralWidget);  
  
    // 连接按钮的 clicked 信号到槽函数  
    connect(button, &QPushButton::clicked, this, [=](){  
        QString text = lineEdit->text(); // 获取文本框中的文本  
        label->setText(text); // 将文本设置为标签的文本  
    });  
}  
  
MainWindow::~MainWindow()  
{  
    delete ui;  
}

总结:本篇文章主要说明了控件的一些性质与合集 实现控件的方式有两种 一种是通过代码的方式 另一种是通过拖控件利用UI的形式 在这里小编建议先使用代码的形式 在使用ui 毕竟熟能生巧

好了 本篇文章就到这里结束了 在这里 小编推荐一个性价比很高的课程:

https://xxetb.xetslk.com/s/2PjJ3T

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MySQL数据库基础(四):图形化开发工具DataGrip

文章目录 图形化开发工具DataGrip 一、DataGrip介绍 二、DataGrip安装 三、创建工程 四、连接数据库 五、选择要使用的数据库 六、DataGrip软件设置 1、设置字体大小 2、设置关键字大写 3、自动排版 图形化开发工具DataGrip 一、DataGrip介绍 DataGrip是JetBrains公…

GPT-4带来的思想火花

GPT-4能够以其强大的生成能力和广泛的知识储备激发出众多思想火花。它能够在不同的情境下生成新颖的观点、独特的见解和富有创意的解决方案&#xff0c;这不仅有助于用户突破思维定势&#xff0c;还能促进知识与信息在不同领域的交叉融合。 1.GPT-4出色的创新思考和知识整合能…

计算机组成原理(3)-----外存储器

目录 一.磁盘存储器 1.磁盘设备的组成 2.磁盘的性能指标 3.磁盘地址 4.硬盘的工作过程 5.磁盘阵列 二.固态硬盘SSD 一.磁盘存储器 计算机的外存储器又称为辅助存储器&#xff0c;目前主要使用磁表面存储器。 所谓“磁表面存储”&#xff0c;是指把某些磁性材料薄薄地涂…

anomalib1.0学习纪实-续1:增加新算法

0、基本信息 现在我要增加一个新算法&#xff1a;DDAD 他的代码&#xff0c;可以在github中找到&#xff1a;GitHub - arimousa/DDAD 一、基础操作&#xff1a; 1、修改anomalib\src\anomalib\models\__init__.py 我增加的第33行和61行&#xff0c; 2、 增加ddad文件夹和文…

在 Android 上部署自定义 YOLOv8 教程

在本教程中&#xff0c;我将向您展示如何在 Android 设备上使用自定义数据集部署 YOLOv8。想要了解如何在 Android 设备上使用您自己的数据集部署 YOLOv8&#xff1f;本文将展示如何操作。 Android 上的 自定义 YOLOv8 &#x1f525; ⚡️ 结果显示标题 对从 GoPro 流式传输到移…

BulingBuling - 《大家来写作》 [ Everybody Writes ]

大家来写作 创造令人难以置信的好内容的必备指南 作者&#xff1a;安-汉德莱 Everybody Writes Your Go-To Guide to Creating Ridiculously Good Content By Ann Handley 内容提要 《Everybody Writes》&#xff08;2014年&#xff09;为你提供了关于如何创造优秀内容的宝…

【Linux内核】从0开始入门Linux Kernel源码

&#x1f308; 博客个人主页&#xff1a;Chris在Coding &#x1f3a5; 本文所属专栏&#xff1a;[Linux内核] ❤️ 前置学习专栏&#xff1a;[Linux学习]从0到1 ⏰ 我们仍在旅途 ​ 目录 …

电商小程序09活动管理

目录 1 创建数据源2 详情页面搭建3 首页轮播图搭建4 最终的效果5 总结 商家在日常运营中经常需要通过活动来进行推广和促销&#xff0c;我们在小程序中也需要考虑这部分的业务。本节我们讲解一下微搭低代码中如何实现活动的功能。 1 创建数据源 展示信息需要将信息存储到数据源…

css篇---移动端适配的方案有哪几种

移动端适配 移动端适配是指同一个页面可以在不同的移动端设备上都有合理的布局。主流实现的方案有 响应式布局通过rem或者vw,vh 等实现不同设备有相同的比例而实现适配 首先需要了解viewport 【视口】 视口代表了一个可看见的多边形区域&#xff08;通常来说是矩形&#xff0…

元宇宙专题:元宇宙概念娱乐应用场景案例研究报告 - 体验驱动篇

今天分享的是元宇宙系列深度研究报告&#xff1a;《元宇宙专题&#xff1a;元宇宙概念娱乐应用场景案例研究报告 - 体验驱动篇》。 &#xff08;报告出品方&#xff1a;艾瑞咨询&#xff09; 报告共计&#xff1a;51页 避免刻舟求剑地探索元宇宙概念产品 对于任何一个宏大而…

<网络安全>《35 网络攻防专业课<第一课 - 网络攻防准备>》

1 主要内容 认识黑客 认识端口 常见术语与命令 网络攻击流程 VMWare虚拟环境靶机搭建 2 认识黑客 2.1 白帽、灰帽和黑帽黑客 白帽黑客是指有能力破坏电脑安全但不具恶意目的黑客。 灰帽黑客是指对于伦理和法律态度不明的黑客。 黑帽黑客经常用于区别于一般&#xff08;正面…

阿里云香港服务器详解_CN2线路测试_BGP多线精品测试

阿里云香港服务器中国香港数据中心网络线路类型BGP多线精品&#xff0c;中国电信CN2高速网络高质量、大规格BGP带宽&#xff0c;运营商精品公网直连中国内地&#xff0c;时延更低&#xff0c;优化海外回中国内地流量的公网线路&#xff0c;可以提高国际业务访问质量。阿里云服务…

开年王炸!OpenAI发布文本转视频模型Sora,有亿点震撼!

大家好&#xff0c;我是木易&#xff0c;一个持续关注AI领域的互联网技术产品经理&#xff0c;国内Top2本科&#xff0c;美国Top10 CS研究生&#xff0c;MBA。我坚信AI是普通人变强的“外挂”&#xff0c;所以创建了“AI信息Gap”这个公众号&#xff0c;专注于分享AI全维度知识…

OCP的operator——(4)用户任务:使用Operator创建etcd集群

文章目录 环境在namespace中安装Operator先决条件使用Web console从OperatorHub安装删除 使用CLI从OperatorHub安装从已安装的Operator创建应用使用Operator创建etcd集群报错从web console debug从命令行debug分析 参考 环境 RHEL 9.3Red Hat OpenShift Local 2.32 在namespa…

机器学习面试:请你谈谈生成模型和判别模型的区别?

生成模型:由数据学习联合概率密度分布P(XY)&#xff0c;然后求出条件概率分布P(YIX)作为预测的模型&#xff0c;即生成模型:P(Y|X) P(X,Y)/ P(X)(贝叶斯概率)。基本思想是首先建立样本的联合概率概率密度模型P(X,Y)然后再得到后验概率P(Y|X)&#xff0c;再利用它进行分类。典型…

数学实验第三版(主编:李继成 赵小艳)课后练习答案(十二)(4)

实验十二&#xff1a;微分方程模型 练习四 1.如图12.12所示,有一只猎狗在B点位置发现了一只兔子在正东北方距离它200m的地方0处,此时兔子开始以8m/s的速度向正西北方距离为120m的洞口A全速跑去,假设猎狗在追赶兔子的时候始终朝着兔子的方向全速奔跑,按要求完成下面的实验: (1…

BulingBuling - 《自律就是自由》 [ Discipline Equals Freedom ]

自律就是自由 实战手册 作者&#xff1a;Jocko Willink Discipline Equals Freedom Field Manual By Jocko Willink 简介 《自律就是自由》&#xff08;2020年&#xff09;是一本关于自律艺术的实战手册。它揭示了你需要做什么来满足你的全部潜能--以及为什么自律能让你自…

【HarmonyOS】hdc 环境变量设置

hdc&#xff08;HarmonyOS Device Connector&#xff09;是 HarmonyOS 为开发人员提供的用于调试的命令行工具&#xff0c;通过该工具可以在 windows/linux/mac 系统上与真实设备或者模拟器进行交互。 hdc 工具通过 HarmonyOS SDK 获取&#xff0c;存放于 /Huawei/Sdk/openhar…

英文论文(sci)解读复现【NO.18】基于DS-YOLOv8的目标检测方法用于遥感图像

此前出了目标检测算法改进专栏&#xff0c;但是对于应用于什么场景&#xff0c;需要什么改进方法对应与自己的应用场景有效果&#xff0c;并且多少改进点能发什么水平的文章&#xff0c;为解决大家的困惑&#xff0c;此系列文章旨在给大家解读发表高水平学术期刊中的 SCI论文&a…

机器学习:k近邻算法(Python)

一、k近邻算法的定义 二、KD树结点信息封装 kdtree_node.py class KDTreeNode:"""KD树结点信息封装"""def __init__(self, instance_nodeNone, instance_labelNone, instance_idxNone,split_featureNone, left_childNone, right_childNone, kd…