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.rhkb.cn/news/319698.html

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

相关文章

Redisson 分布式锁和同步器

系列文章目录 文章目录 系列文章目录前言前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分享给你的码吧。 redisson 是基于redis的扩展库,使得redis除了应用于缓存以外,还能做队列…

golang学习笔记(内存模型和分配机制)

操作系统的存储管理 虚拟内存管理 虚拟内存是一种内存管理技术&#xff0c;它允许操作系统为每个进程提供一个比实际物理内存更大的地址空间。这个地址空间被称为虚拟地址空间&#xff0c;而实际的物理内存则被称为物理地址空间。使用虚拟内存有以下几点好处&#xff1a; 内…

【机器学习-21】集成学习---Bagging之随机森林(RF)

【机器学习】集成学习---Bagging之随机森林&#xff08;RF&#xff09; 一、引言1. 简要介绍集成学习的概念及其在机器学习领域的重要性。2. 引出随机森林作为Bagging算法的一个典型应用。 二、随机森林原理1. Bagging算法的基本思想2. 随机森林的构造3. 随机森林的工作机制 三…

JVM的垃圾回收机制(GC机制)

在Java代码运行的过程中&#xff0c;JVM发现 某些资源不需要再使用的时候&#xff0c;就会自动把资源所占的内存给回收掉&#xff0c;就不需要程序员自行操作了。“自动回收资源”就是JVM的“垃圾回收机制”&#xff0c;“垃圾回收机制”也称"GC机制"。 对于Java代码…

【论文笔记】Training language models to follow instructions with human feedback A部分

Training language models to follow instructions with human feedback A 部分 回顾一下第一代 GPT-1 &#xff1a; 设计思路是 “海量无标记文本进行无监督预训练少量有标签文本有监督微调” 范式&#xff1b;模型架构是基于 Transformer 的叠加解码器&#xff08;掩码自注意…

OceanBase开发者大会实录-杨传辉:携手开发者打造一体化数据库

本文来自2024 OceanBase开发者大会&#xff0c;OceanBase CTO 杨传辉的演讲实录—《携手开发者打造一体化数据库》。完整视频回看&#xff0c;请点击这里&#xff1e;> 各位 OceanBase 的开发者&#xff0c;大家上午好&#xff01;今天非常高兴能够在上海与大家再次相聚&…

半监督节点分类:标签传播和消息传递

基础概念回顾 传统图机器学习的特征工程——节点层面&#xff0c;连接层面&#xff0c;全图层面 节点层面&#xff1a;信用卡欺诈 连接层面&#xff1a;推荐可能认识的人 全图层面&#xff1a;预测分子结构 半监督节点分类 半监督节点分类&#xff1a;用已知标签节点预测未…

路由器的构成

一、路由器简介 路由器是互联网中的关键设备&#xff1a; 连接不同的网络路由器是多个输入端口和多个输出端口的专用计算机&#xff0c;其任务是转发分组&#xff08;转发给下一跳路由器&#xff09;下一跳路由器也按照这种方法处理分组&#xff0c;直到该分组到达终点为止 …

Gone框架介绍3 - 使用gone命令,自动生成Priest函数

文章目录 1. 安装辅助工具: gone2. 创建一个名为gen-code的新项目3. 创建Goner4. 使用辅助工具5. 添加main函数 我在两年前实现了一个Golang的依赖注入框架&#xff0c;并且集成了gin、xorm、redis、cron、消息中间件等功能&#xff0c;自己觉得还挺好用的&#xff1b;之前一直…

js api part3

环境对象 环境对象&#xff1a; 指的是函数内部特殊的 变量 this &#xff0c; 它代表着当前函数运行时所处的环境 作用&#xff1a; 弄清楚this的指向&#xff0c;可以让我们代码更简洁 函数的调用方式不同&#xff0c;this 指代的对象也不同 【谁调用&#xff0c; this 就是…

中科院突破:TalkingGaussian技术实现3D人脸动态无失真,高效同步嘴唇运动!

DeepVisionary 每日深度学习前沿科技推送&顶会论文分享&#xff0c;与你一起了解前沿深度学习信息&#xff01; 引言&#xff1a;探索高质量3D对话头像的新方法 在数字媒体和虚拟互动领域&#xff0c;高质量的3D对话头像技术正变得日益重要。这种技术能够在虚拟现实、电影…

银河麒麟桌面版开机后网络无法自动链接 麒麟系统开机没有连接ens33

1.每次虚拟机开机启动麒麟操作系统&#xff0c;都要输入账号&#xff0c;密码。 进入点击这个ens33 内网才连接 2. 如何开机就脸上呢&#xff1f; 2.1. 进入 cd /etc/sysconfig/network-scripts 2.2 修改参数 onbootyes 改为yes 2.3 重启即可 a. 直接重启机器查看是否正常&…

docker原理

Docker原理 在前面我们学习了Docker&#xff0c;接下来我们探究一下Docker的底层技术原理 Linux 命名空间&#xff08;namespace&#xff09;、控制组&#xff08;cgroups&#xff09;和 联合文件系统&#xff08;UnionFS&#xff09; 三大技术支撑了目前 Docker 的实现&…

Unity SteamVR入门

概述 VR项目现在在当前已经是非常热门的技术&#xff0c;可以给玩家身临其境的感觉&#xff0c;接下来让我们学习这部分的内容吧&#xff01; SteamVR Input SteamVR绑定流程&#xff0c;在Windows窗口的点击SteamVR-input&#xff0c;图1&#xff0c;在这里可以选择你需要绑定…

2024五一杯数学建模C题思路分享 - 煤矿深部开采冲击地压危险预测

文章目录 1 赛题选题分析 2 解题思路2.1 问题重述2.2 第一问完整思路2.2 二、三问思路更新 3 最新思路更新 1 赛题 C题 煤矿深部开采冲击地压危险预测 煤炭是中国的主要能源和重要的工业原料。然而&#xff0c;随着开采深度的增加&#xff0c;地应力增大&#xff0c;井下煤岩动…

【Flask 系统教程 4】Jinjia2模版和语法

Jinjia2 模板 模板的介绍 Jinja2 是一种现代的、设计优雅的模板引擎&#xff0c;它是 Python 的一部分&#xff0c;由 Armin Ronacher 开发。Jinja2 允许你在 HTML 文档中嵌入 Python 代码&#xff0c;以及使用变量、控制结构和过滤器来动态生成内容。它的语法简洁清晰&#…

kerberos-hive-dbeaver问题总结

一、kerberos安装windows客户端 1、官方下载地址 http://web.mit.edu/kerberos/dist/ 2、环境变量配置 下载msi安装包&#xff0c;无需重启计算机&#xff0c;调整环境变量在jdk的前面&#xff0c;尽量靠前&#xff0c;因为jdk也带了kinit、klist等命令 C:\Program Files\…

【多模态大模型】AI对视频内容解析问答

文章目录 1. 项目背景2. 直接对视频进行解析进行AI问答&#xff1a;MiniGPT4-Video2.1 MiniGPT4-Video效果 3. 对视频抽帧为图片再进行AI问答3.1 视频抽帧3.2 图片AI问答3.2.1 阿里通义千问大模型 Qwen-vl-plus3.2.2 Moonshot 1. 项目背景 最近在做一个项目,需要使用AI技术对视…

Git常用(持续更新)

常用场景&#xff1a; 初始化&#xff1a; git config --global user.name "codelabs" git config --global user.email mycodelabs.com git init git remote add origin https://github.com/username/repository.git git pull origin master 提交&#xff1a; gi…

【Android学习】自定义文本框和输入监听

实现功能 以上代码可实现功能&#xff1a; 1 自定义文本框样式 2. 文本框触发形式转变 3. 文本框输入长度监听&#xff0c;达到最大长度关闭软键盘 4. password框触发检测phone框内容 1. drawable自定义形状 我创建了editor_focus.xml 和 editor_unfocus.xml&#xff0c;两者仅…