QT5带UI的常用控件

news2024/10/7 14:33:05

目录

新建工程,Qmainwindow带UI

UI设计器

常用控件区

Buttons  按钮

containers     容器

控件属性区域

对象监视区

布局工具区

信号与槽区

简单例子1

放置一个按钮控件,改文本为发送,该按键为Button1;

按钮关联信号和槽

菜单栏、工具栏、状态栏

可以在这里面直接点击编辑增加菜单和菜单项

先设计页面,再用代码控制

简单例子2

设计一个槽容器和一个按钮,布局任意

容器插入页

按钮设计

槽代码设计


新建工程,Qmainwindow带UI

UI设计器

常用控件区

layouts   布局

spacer  间隔

Buttons  按钮

item views 显示和数据是分离的

item widgets 

containers     容器

input widgets   输入控件

display Widgets  显示图片 标签

Buttons  按钮

1、常用按键

2、和常用按键差不多

3、单选框

4、复选框,多选

5、链接按钮

6  标准对话按钮,ok或者取消

containers     容器

  1. 1 组容器
  2. 2 滚动容器
  3. 3抽屉式容器
  4. 4标签式容器
  5. 5栈容器
  6. 6带边框的容器布局
  7. 7不带边框
  8. 8分栏显示
  9. 9浮动窗口
  10. 10window上使用的
input widgets   输入控件

  1. 1选项下拉框
  2. 2字体选择下拉框
  3. 3行编辑
  4. 4文本编辑,多行,也可以图片
  5. 5文本编辑,只能文字
  6. 6整形数字的微调  设置数值
  7. 7Double 类型数字调节 ,设置数值
  8. 8调时间
  9. 9调日期
  10. 10调时间,调日期
  11. 11旋转按钮
  12. 12水平滚动
  13. 13垂直滚动
  14. 14水平、垂直滚动
  15. 15设置快捷方式

display Widgets  显示图片 标签

  1. 1标签  可以显示图片、文字、动画、网址
  2. 2文本浏览器
  3. 3绘图
  4. 4日历
  5. 5数码管
  6. 6进度条
  7. 7横线
  8. 8垂直线
  9. 9
  10. 10
  11. 11
  12. 12简单网页浏览

控件属性区域

对象监视区

对象可以更改名字,类就是父类

布局工具区

信号与槽区

简单例子1按钮

放置一个按钮控件,改文本为发送,该按键为Button1;

按钮关联信号和槽

菜单栏、工具栏、状态栏

可以在这里面直接点击编辑增加菜单和菜单项

先设计页面,再用代码控制

且必须是ui->setupUi(this);之后设计代码;

且都是操作UI的界面,所以控制ui上面的对象都是ui->引用

#include "mainwindow.h"
#include "ui_mainwindow.h"

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    ui->Button1->setText("123");
}

MainWindow::~MainWindow()
{
    delete ui;
}

简单例子2容器

  使用栈容器;切换栈容器界面

设计一个槽容器和一个按钮,布局任意

容器插入页

设计窗口选择栈容器监视对象区,找到容器右键

按钮设计

右按键用对应的信号跳转到槽

其实上面的操作自动添加一个槽函数

槽代码设计
void MainWindow::on_pushButton_7_pressed()//刚才跳转槽生成的函数
{
    static int i;

    ui->stackedWidget->setCurrentIndex(++i%4);//设置当前页索引

}

简单例子3输入控件行编辑

行编辑

查看对象名为lineEdit

操作行编辑代码
    QString str1 =ui->lineEdit->text();//获取行编辑器内容
    qDebug()<<str1;
    ui->lineEdit->setText("123456");//设置行内容
    ui->lineEdit->setTextMargins(15,0,0,0);//设置显示内容的边间隔
    
    ui->lineEdit->setEchoMode(QLineEdit::Password);//设置内容显示模式,掩藏


    //以下的构建输入提示模型
    QStringList list;//字符串列表
    list<<"hello"<<"how are you"<<"hehe";//字符串列表构建
    QCompleter *com=new QCompleter(list,this);//构建字符串模型
    com->setCaseSensitivity(Qt::CaseInsensitive);//设置模型为不区分大小写
    ui->lineEdit->setCompleter(com);//把模型给行编辑器使用,给行编辑器一个模型
 

ui->lineEdit->setEchoMode(QLineEdit::Password);//显示模式,F1进入帮助文档

com->setCaseSensitivity()// f1 进入帮助文档,可以知道填什么内容

如下填枚举;0 不区分大小写 ,1区分大小写

简单例子4显示控件标签

布局四个标签

改四个标签对象名字,给四个标签设置text

给四个标签选择资源或者文件pixmap

也可以通过新建资源方式由代码添加资源
     把准备好的文件加入工程保存的地方

给工程添加资源文件

进入该资源文件编辑入口

 

给资源文件添加资源

添加前缀

添加文件

添加结果如

可以右键复制资源路径提供代码使用

代码添加资源
    //设置一个图片
    //setPixmap,设置资源 (参 是资源地址 ,格式,转换低分辨数据标志)
    ui->label_Image->setPixmap(QPixmap("://image/tupu1.jpg",0,0));
    //setScaledContents 图片大小自适应标签大小
    ui->label_Image->setScaledContents(true);


    QMovie *mymovie= new QMovie("://image/1.gif");//新建一个动画
    ui->label_Gif->setMovie(mymovie);//给标签设置动画
    mymovie->start();//动画开始播放
    ui->label_Gif->setScaledContents(true);//自适应标签大小


    ui->label_Url->setText("<a href=\"https://www.baidu.com/\">baidu</a>");
    //设置网页"<a href=\ 地址 /\"> 标签名字 </a>"
    ui->label_Url->setOpenExternalLinks(true);//打开外部链接

ui->label_Image->setPixmap()  //F1查看填入的参数

得知参数类型如下

发现这个参数是一个类

这个类能使用的是什么,可以看看看共有函数调用;

发现是有调用的选择一个有地址的

 选择第三个,可以查看可以知道第一个参是图片地址

第二个参:应该是格式筛选 (可默认0)

第三个参数:转换标记 高分辨率转低 (可默认为0)  If the image needs to be modified to fit in a lower-resolution result (e.g. converting from 32-bit to 8-bit), use the flags to control the conversion.

scaledcontents适应大小勾选

简单例子5进度条+网页浏览;

    ui->progressBar->setMinimum(0);//设置进度调最小值
    ui->progressBar->setMaximum(100);//设置进度调最大值
    ui->progressBar->setValue(50);//设置当前值

    ui->webView->load( QUrl("https://www.baidu.com"));//加载网址

ui->webView->load(1)  F1进入帮助文档

可以知道变量添加的参数为QUrl  类型

可以看出使用QUrl   需要添加 += core 和包含头文件

可以看有什么可以调用的公有

查看QUrl也是地址参数

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

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

相关文章

DRF版本组件源码分析

DRF版本组件源码分析 在restful规范中要去&#xff0c;后端的API中需要体现版本。 3.6.1 GET参数传递版本 from rest_framework.versioning import QueryParameterVersioning单视图应用 多视图应用 # settings.pyREST_FRAMEWORK {"VERSION_PARAM": "versi…

C 深入指针(1)

目录 一、const 1、const修饰变量 2、const修饰指针 2.1 const int* p&#xff08;int const* p&#xff09; 2.2 int* const p 2.3 结论 二、指针运算 1、指针 - 整数 2、指针 - 指针 3、指针的关系运算 三、指针的使用 1、模拟实现 strlen 2、传值调用和传址调用…

读天才与算法:人脑与AI的数学思维笔记16_音乐图灵测试

1. 艾米 1.1. 人工智能作曲家 1.1.1. 分析机可能会生成任意复杂程度、精细程度的科学的音乐作品 1.1.1.1. 阿达洛夫莱斯 1.1.2. 巴赫的作品是大多数作曲家开始学习创作的起点&#xff0c;也是大多数计算机开始学习作曲的起点…

汽车车灯罩通常使用的主要材料包括什么?汽车车灯的灯罩如果破损破裂破洞了要怎么修复?

1.聚碳酸酯&#xff08;PC&#xff09;&#xff1a;PC具有高强度、高韧性和耐冲击性&#xff0c;因此常用于汽车车灯的外罩和透镜部分。它还具有良好的透光性&#xff0c;使得车灯能够有效地发光。 2.丙烯酸酯&#xff08;PMMA&#xff09;&#xff1a;PMMA&#xff0c;也称为…

基于GWO灰狼优化的CNN-LSTM-Attention的时间序列回归预测matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 4.1卷积神经网络&#xff08;CNN&#xff09;在时间序列中的应用 4.2 长短时记忆网络&#xff08;LSTM&#xff09;处理序列依赖关系 4.3 注意力机制&#xff08;Attention&#xff09; 4…

SpringBoot实现图片上传(个人头像的修改)

SpringBootlayui实现个人信息头像的更改 该文章适合对SpringBoot&#xff0c;Thymeleaf&#xff0c;layui入门的小伙伴 废话不多说&#xff0c;直接上干货 Springbootlayui实现头像更换 前端公共部分代码 HTML页面代码 <div class"layui-card-header" style&quo…

[实例] Unity Shader 利用顶点着色器模拟简单水波

我们都知道顶点着色器可以用来改变模型各个顶点的位置&#xff0c;那么本篇我们就利用顶点着色器来做一个模拟简单水波的应用。 1. 简谐运动 在进行模拟水波之前&#xff0c;我们需要了解简谐运动&#xff08;Simple Harmonic Motion&#xff09;公式&#xff1a; 其中&#…

有公网IP的好处?

1. 维护远程连接需求的解决方案 公网IP是指可以通过互联网直接访问的IP地址&#xff0c;相对于私有IP地址而言具有重要的好处。公网IP的最大好处之一是解决了各行业客户的远程连接需求。由于天联组网操作简单、跨平台应用、无网络要求以及独创的安全加速方案等原因&#xff0c…

Python 全栈体系【四阶】(三十八)

第五章 深度学习 八、目标检测 3. 目标检测模型 3.2 YOLO 系列 3.2.1 YOLOv1&#xff08;2016&#xff09; 3.2.1.1 基本思想 YOLO&#xff08;You Only Look Once &#xff09;是继 RCNN&#xff0c;fast-RCNN 和 faster-RCNN 之后&#xff0c;Ross Girshick 针对 DL 目…

人工智能论文:BERT和GPT, GPT-2, GPT-3 的简明对比和主要区别

在BERT的论文里面&#xff1a; 2018.10 BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding&#xff0c;BERT已经解释了BERT&#xff0c;GPT&#xff0c;ELMo的区别。 *ELMo为双向RNN&#xff0c;请忽略。 主要区别&#xff1a; BERT使用的是…

Qt QLCDNumber详解

1.简介 它提供了一个显示数字的显示屏控件&#xff0c;效果类似于现实世界中的液晶显示屏。它可以显示任何大小的数字。它可以显示十进制、十六进制、八进制或二进制数字。可以用setMode更改基数&#xff0c;用setSmallDecimalPoint更改小数点。 2.常用方法 以下是一些常用的…

nginx--第三方模块安装上传下载服务

第三方模块安装 准备 cd /usr/local/src/ yum install git -y git clone https://github.com/openresty/echo-nginx-module.git cd nginx-1.24.0 yum -y install perl-devel perl-ExtUtils-Embed zlib-devel gcc-c libtool openssl openssl-devel 编译安装 ./configure \--p…

【深度学习基础(2)】深度学习之前:机器学习简史

文章目录 一. 深度学习的起源1. 概率建模--机器学习分类器2. 早期神经网络--反向传播算法的转折3. 核方法 -- 忽略神经网络4. 决策树、随机森林和梯度提升机5. 神经网络替代svm与决策树 二. 深度学习与机器学习有何不同 可以这样说&#xff0c;当前工业界所使用的大部分机器学习…

Web安全研究(七)

NDSS 2023 开源地址&#xff1a;https://github.com/bfpmeasurementgithub/browser-fingeprint-measurement 霍普金斯大学 文章结构 introbackground threat model measurement methodology step1: traffic analysisstep2: fingerprint analysis dataset attack statisticsbro…

【通信中间件】Fdbus HelloWorld实例

Fdbus实例教程 Fdbus简介 Fdbus 全称 Fast Distributed Bus&#xff08;高速分布式总线&#xff09;&#xff0c;提供IPCRPC功能。适用于多种OS&#xff1a; LinuxQNXAnroidOSWindow Fdbus本质是Socket&#xff0c;IPC基于Unix domain socket&#xff0c;RPC基于TCP。使用G…

诺基亚贝尔探访上海斯歌,共探创新合作新机遇

近日&#xff0c;上海斯歌K2 BPM迎来重要客户考察交流活动。来自诺基亚贝尔的首席数字官刘少勇一行莅临了上海斯歌K2 BPM 的武汉研发中心&#xff0c;并对上海斯歌在BPM业务流程管理领域的研发成果及交付能力给予了高度肯定。 此次活动不仅加深了双方的战略合作&#xff0c;也为…

【机器学习基础1】什么是机器学习、预测模型解决问题的步骤、机器学习的Python生态圈

文章目录 一. 什么是机器学习1. 概念2. 机器学习算法分类 二. 利用预测模型解决问题的步骤三. 机器学习的Python生态圈 一. 什么是机器学习 1. 概念 机器学习&#xff08;Machine Learning&#xff0c;ML&#xff09;是一门多领域的交叉学科&#xff0c;涉及概率论、统计学、…

Librosa:探索音频处理利器

Librosa&#xff1a;探索音频处理利器 音频处理在数据科学、音乐分析和语音识别等领域中扮演着重要角色。Python库Librosa是一个功能强大且广泛使用的工具&#xff0c;专门用于音频分析和处理。本文将介绍Librosa库的基本概念、主要功能以及常见应用场景&#xff0c;帮助读者深…

银行卡归属地查询API接口快速对接

银行卡归属地查询API接口指的是通过银行卡号查询该银行卡详细信息&#xff0c;包括银行卡名称、卡种、卡品牌、发卡行、编号以及归属地等信息&#xff0c;支持一千多家银行返回归属地信息&#xff0c;那么银行卡归属地查询API接口如何快速对接呢&#xff1f; 首先找到有做银行…

【linux-汇编-点灯之思路-程序】

目录 1. ARM汇编中的一些注意事项2. IMXULL汇编点灯的前序&#xff1a;3. IMXULL汇编点灯之确定引脚&#xff1a;4. IMXULL汇编点灯之引脚功能编写&#xff1a;4.1 第一步&#xff0c;开时钟4.2 第二步&#xff0c;定功能&#xff08;MUX&#xff09;4.3 第三步&#xff0c;定电…