QT5带UI的常用控件

目录

新建工程,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.mzph.cn/pingmian/6017.shtml

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

相关文章

STM32开启停止模式,用外部中断唤醒程序运行

今天学习了一下STM32的停止模式&#xff0c;停止模式下&#xff0c;所有外设的时钟和CPU的电源都会被关闭&#xff0c;所以会很省电&#xff0c;打破这种停止模式的方式就是外部中断可以唤醒停止模式。要想实现这个功能&#xff0c;其实设置很简单的&#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…

Visio 2021 (64bit)安装教程

Visio 2021 (64bit)安装教程 ​ 通知公告 Visio 2021 (64位) 是一款流程图和图表设计工具,主要用于创建和编辑各种类型的图表和图形。它提供了一个直观的界面和丰富的功能,可以帮助用户快速绘制专业的流程图、组织结构图、网络图、平面图、数据库模型等。 具体来说,Visio 20…

笔记1--Llama 3 超级课堂 | Llama3概述与演进历程

1、Llama 3概述 https://github.com/SmartFlowAI/Llama3-Tutorial.git 【Llama 3 五一超级课堂 | Llama3概述与演进历程】 2、Llama 3 改进点 【最新【大模型微调】大模型llama3技术全面解析 大模型应用部署 据说llama3不满足scaling law&#xff1f;】…

05.Git标签管理

Git标签管理 #创建一个标签 [rootgitlab ~/demo]#git tag -a "v1.1" -m "first" [rootgitlab ~/demo]# git tag v1.1 #查看标签信息 [rootgitlab ~/demo]# git show v1.1 tag v1.1 Tagger: quyunlong <quyunlongfoxmail.com> Date: Tue Oct 18…

【DevOps】发布自建镜像到Harbor镜像仓库

本博文介绍了开源的本地部署Docker镜像仓库Harbor&#xff0c; 并讲解怎么样在ubuntu20.04上安装配置Harbor&#xff0c;最后用一个Web应用发布成镜像&#xff0c;推送到镜像仓库的例子结尾。学习本博文并按照步骤进行操作&#xff0c;你将掌握搭建本地镜像仓库&#xff0c;并将…

OpenCV 实现重新映射(53)

返回:OpenCV系列文章目录&#xff08;持续更新中......&#xff09; 上一篇&#xff1a;OpenCV 实现霍夫圆变换(52) 下一篇 :OpenCV实现仿射变换(54) 目标 在本教程中&#xff0c;您将学习如何&#xff1a; 一个。使用 OpenCV 函数 cv&#xff1a;&#xff1a;remap 实现简…

STM32——点亮第一个LED灯

代码示例&#xff1a; #include "stm32f10x.h" // Device headerint main() {RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);//开启时钟GPIO_InitTypeDef GPIO_InitStructure;GPIO_InitStructure.GPIO_Mode GPIO_Mode_Out_PP;GPIO_InitSt…

c# winform快速建websocket服务器源码 wpf快速搭建websocket服务 c#简单建立websocket服务 websocket快速搭建

完整源码下载----->点击 随着互联网技术的飞速发展&#xff0c;实时交互和数据推送已成为众多应用的核心需求。传统的HTTP协议&#xff0c;基于请求-响应模型&#xff0c;无法满足现代Web应用对低延迟、双向通信的高标准要求。在此背景下&#xff0c;WebSocket协议应运而生…

【51单片机普中板子74LS138+245+573可调时钟整点蜂鸣中级应用】2022-12-7

缘由用51单片机普中开发板实现数字时钟-嵌入式-CSDN问答 #include "reg52.h" //定义按键 sbit key0P3^0; sbit key1P3^1; sbit key2P3^2; sbit key3P3^3; //定义数码管位驱运位 sbit L1P2^2; sbit L2P2^3; sbit L3P2^4; sbit beepP2^5; unsigned char code ShuMaGua…

一周零碎时间练习微服务(nacos,rq,springcloud,es等)内容

目录 1 总览1.1 技术架构1.2 其他1.2.1 数据库1.2.2 后端部分1.2.2.1 复习feign1.2.2.2 复习下网关网关的核心功能特性&#xff1a;网关路由的流程断言工厂过滤器工厂全局过滤器 过滤器执行顺序解决跨域问题 1.2.2.3 es部分复习 1.2.3 前端部分 2 day1 配置网关2.1 任务2.2 网关…

ThreeJS:项目搭建

介绍如何基于Vite、Vue、React构建ThreeJS项目。 Vite项目 1. 初始化项目&#xff0c;命令&#xff1a;npm init vitelatest&#xff0c; 2. 安装依赖&#xff0c;命令&#xff1a;npm install&#xff0c; 3. 启动项目&#xff0c;命令&#xff1a;npm run dev。 4. 样式初始…

【LeetCode刷题记录】简单篇-94-二叉树的中序遍历

【题目描述】 给定一个二叉树的根节点 root &#xff0c;返回 它的 中序 遍历 。 【测试用例】 示例1&#xff1a; 输入&#xff1a;root [1,null,2,3] 输出&#xff1a;[1,3,2] 示例2&#xff1a; 输入&#xff1a;root [ ] 输出&#xff1a;[ ] 示例3&#xff1a; 输入…

ThreeJS:本地部署官网文档与案例

部署方式 部署之前请确保已经配置好node.js环境。 1. 下载ThreeJS源码 ThreeJS的GitHub地址&#xff1a;GitHub - mrdoob/three.js: JavaScript 3D Library.&#xff0c;可以简单查看ThreeJS当前版本&#xff1a;r164&#xff0c; 我们可以选择对应的版本&#xff08;此处为r1…

win11 Terminal 部分窗口美化

需求及分析&#xff1a;因为在 cmd、anaconda prompt 窗口中输入命令较多&#xff0c;而命令输入行和输出结果都是同一个颜色&#xff0c;不易阅读&#xff0c;故将需求定性为「美化窗口」。 美化结束后&#xff0c;我在想是否能不安装任何软件&#xff0c;简单地通过调整主题颜…

备考2024年上海初中生古诗文大会:单选题真题示例和独家解析

现在距离2024年初中生古诗文大会还有四个多月时间&#xff0c;备考要趁早&#xff0c;因为知识点还是相对比较多的。这些知识点对于初中语文的学习也是很有帮助的。 我们继续来看10道历年真题&#xff0c;这些真题来自于过去历年真题的去重、汇总&#xff0c;每道题都有参考答…

2-手工sql注入(进阶篇) sqlilabs靶场1-4题

1. 阅读&#xff0c;学习本章前&#xff0c;可以先去看看基础篇&#xff1a;1-手工sql注入(基础篇)-CSDN博客 2. 本章通过对sqlilabs靶场的实战&#xff0c;关于sqlilabs靶场的搭建&#xff1a;Linux搭建靶场-CSDN博客 3. 本章会使用到sqlmap&#xff0c;关于sqlmap的命令&…

2024五一数学建模C题煤矿深部开采冲击地压危险预测原创论文分享

大家好&#xff0c;从昨天肝到现在&#xff0c;终于完成了2024五一数学建模竞赛C题的完整论文啦。 实在精力有限&#xff0c;具体的讲解大家可以去讲解视频&#xff1a; 2024五一数学建模C题完整原创论文讲解&#xff0c;手把手保姆级教学&#xff01;_哔哩哔哩_bilibili 202…

003 redis分布式锁 jedis分布式锁 Redisson分布式锁 分段锁

文章目录 Redis分布式锁原理1.使用set的命令时&#xff0c;同时设置过期时间2.使用lua脚本&#xff0c;将加锁的命令放在lua脚本中原子性的执行 Jedis分布式锁实现pom.xmlRedisCommandLock.javaRedisCommandLockTest.java 锁过期问题1乐观锁方式&#xff0c;增加版本号(增加版本…

Python面试十问

一、深浅拷贝的区别&#xff1f; 浅拷⻉&#xff1a; 拷⻉的是对象的引⽤&#xff0c;如果原对象改变&#xff0c;相应的拷⻉对象也会发⽣改变。 深拷⻉&#xff1a; 拷⻉对象中的每个元素&#xff0c;拷⻉对象和原有对象不在有关系&#xff0c;两个是独⽴的对象。 浅拷⻉(c…