Qt——QPushButton控件的常见属性、方法和信号

Qt中QPushButton控件的常见属性、方法和信号

一、QPushButton控件常见属性
二、QPushButton控件常见方法
三、QPushButton控件常见信号

一、QPushButton控件常见属性(Properties)

1. text:

描述:按钮上显示的文本。

用法:

button->setText("Click me");

2. setStyleSheet

描述:用于设置控件的样式表
用法:

//#00(r红)00(g绿色)00(b蓝色)
button->setStyleSheet("border: 1px solid red;""border-top: 0;""border-left: 0;""border-right: 0;""background-color: #00aa00");
button2->setStyleSheet(QString("background-color: %1;""border-radius:%2px;").arg("green").arg(10));

3. icon:

描述:按钮上显示的图标。

用法:

button->setIcon(QIcon(":/images/icon.png"));

4. resize:

描述:重置按钮大小。

用法:

button->resize(80, 50); //(width,heigth)

5. move:

描述:移动按钮位置。

用法:

//width():获取控件的宽度 height(): 获取控件高度
button->move(QPoint((width() - button->width()) / 2, (height() - >button->height()) / 2));
//或直接输入x轴和y轴
button->move(30, 50);

6. checkable:

描述:指示按钮是否具有切换状态(按下和释放)。

用法:

button->setCheckable(true);

7. checked:

描述:设置或获取按钮的选中状态,只在 checkabletrue 时有效。

用法:

button->setChecked(true);
// 或
bool isChecked = button->isChecked();

8. enabled:

描述:设置或获取按钮的启用状态(可用或禁用)。

用法:

button->setEnabled(false);
// 或
bool isEnabled = button->isEnabled();

9. visible:

描述:设置或获取按钮的可见性状态(可见或隐藏)。

用法:

button->setVisible(false);
// 或
bool isVisible = button->isVisible();

10. shortcut:

描述:设置按钮的快捷键,用于在应用程序中触发按钮点击。

用法:

button->setShortcut(QKeySequence("Ctrl+S"));

11. toolTip:

描述:设置按钮的工具提示文本,鼠标悬停时显示。

用法:

button->setToolTip("Click this button to save.");

12. statusTip:

描述:设置按钮的状态提示文本,通常在状态栏显示。

用法:

button->setStatusTip("Save the current changes.");

13. whatsThis:

描述:设置按钮的"这是什么"帮助文本,通常用于上下文相关的帮助。

用法:

button->setWhatsThis("This button is used to save the changes you've made.");

14. autoDefault:

描述:如果设置为 true,按钮可以通过回车键触发,而无需具有焦点。

用法:

button->setAutoDefault(true);

15. default:

描述:如果设置为 true,按钮将被指定为默认按钮,通常会显示一个默认的外观(例如,加粗的文本)。

用法:

button->setDefault(true);

16. flat:

描述:如果设置为 true,按钮将没有背景,只显示文本或图标。

用法:

button->setFlat(true);

17. menu:

描述:设置与按钮关联的弹出菜单。

用法:

button->setMenu(menu);

二、QPushButton控件常见方法(Methods)

1. click():

描述:模拟按钮的点击动作,触发按钮的相应槽函数。

用法:

button->click();

2. setText(const QString &text):

描述:设置按钮上显示的文本。

用法:

button->setText("New Text");

3. setIcon(const QIcon &icon):

描述:设置按钮上显示的图标。

用法:

button->setIcon(QIcon(":/images/new_icon.png"));

4. setChecked(bool checked):

描述:设置按钮的选中状态,只在 checkabletrue 时有效。

用法:

button->setChecked(true);

5. setEnabled(bool enabled):

描述:设置按钮的启用状态(true为启用,false为禁用)。

用法:

button->setEnabled(false);

6. setVisible(bool visible):

描述:设置按钮的可见性状态(true为可见,false为不可见)。

用法:

button->setVisible(true);

7. setShortcut(const QKeySequence &key):

描述:设置按钮的快捷键。

用法:

button->setShortcut(QKeySequence("Ctrl+N"));
button->setShortcut(QKeySequence("Shift+Ctrl+S"));
button->setShortcut(QKeySequence("Alt+X"));
//Ctrl+Shift+P
button->setShortcut(QKeySequence(Qt::CTRL + Qt::SHIFT + Qt::Key_P));

8. setToolTip(const QString &tip):

描述:设置按钮的工具提示文本。

用法:

button->setToolTip("Click this button to create a new item.");

9. setStatusTip(const QString &tip):

描述:设置按钮的状态提示文本。

用法:

button->setStatusTip("Create a new item.");

11. setWhatsThis(const QString &text):

描述:设置按钮的"这是什么"帮助文本。

用法:

button->setWhatsThis("This button is used to create a new item.");

12. setAutoDefault(bool enabled):

描述:设置按钮是否响应回车键(true 响应,false不响应)。

用法:

button->setAutoDefault(true);

13. setDefault(bool enabled):

描述:设置按钮是否为默认按钮。

用法:

button->setDefault(true);

14. setFlat(bool enable):

描述:设置按钮是否为扁平样式(无背景)。

用法:

button->setFlat(true);

15. setMenu(QMenu *menu):

描述:设置与按钮关联的弹出菜单。

用法:

button->setMenu(menu);

三、QPushButton控件常见信号

这些信号表示了不同的按钮交互和状态变化,您可以将它们与相应的槽函数连接,以便在特定事件发生时执行所需的操作。
1. clicked():

描述:当按钮被点击时发出。
用法:连接此信号以在按钮被点击时执行操作。

2. customContextMenuRequested(const QPoint &pos):

描述:在用户请求自定义上下文菜单时发出。
用法:连接此信号以在用户请求上下文菜单时执行操作。

3. destroyed(QObject *obj = nullptr):

描述:在对象被销毁时发出。
用法:通常不直接连接此信号,而是用于对象管理和清理。

4. objectNameChanged(const QString &objectName):

描述:当对象名称发生更改时发出。
用法:连接此信号以在对象名称更改时执行操作。

5. pressed():

描述:当按钮被按下时发出。
用法:连接此信号以在按钮被按下时执行操作。

6. released():

描述:当按钮被释放时发出。
用法:连接此信号以在按钮被释放时执行操作。

7. toggled(bool checked):

描述:在按钮的选中状态发生变化时发出,只在 checkable 为 true 时有效。
用法:连接此信号以在按钮选中状态切换时执行操作。

8. windowIconChanged(const QIcon &icon):

描述:当窗口图标发生变化时发出。
用法:连接此信号以在窗口图标变化时执行操作。

9. windowIconTextChanged(const QString &iconText):

描述:当窗口图标的文本发生变化时发出。
用法:连接此信号以在窗口图标文本变化时执行操作。

10. windowTitleChanged(const QString &title):

描述:当窗口标题发生变化时发出。
用法:连接此信号以在窗口标题变化时执行操作。

#include "widget.h"Widget::Widget(QWidget *parent): QWidget(parent)
{//this->setFixedSize(640, 480);//设置窗口大小为固定尺寸this->setFixedSize(QSize(640, 480));//通过匿名对象设置固定窗口大小this->setWindowTitle(QString("按钮"));//设置标题//this->setWindowIcon("");//构造按钮,指定父对象为this,实际就是当前界面的构造按钮QPushButton *btn = new QPushButton(this);btn->setText(QString("按钮1"));//setText():设置文本btn->resize(80, 50);//resize():重置按钮大小(w,h)//width():获取控件的宽度 height(): 获取控件高度btn->move(QPoint((width() - btn->width()) / 2, (height() - btn->height()) / 2));//移动按钮位置//#00(r红)00(g绿色)00(b蓝色)btn->setStyleSheet("border: 1px solid red;""border-top: 0;""border-left: 0;""border-right: 0;""background-color: #00aa00");QPushButton *btn1 = new QPushButton(QString("按钮2"));btn1->setParent(this);//setGeometry():设置控件的位置和尺寸 x():获取控件的x坐标 y():获取控件y坐标btn1->setGeometry(btn->x() - 80, btn->y() - 50, 80, 50);btn1->setIcon(QIcon(":/qq.jpg"));btn1->setIconSize(QSize(80, 25));//设置图标的尺寸QPushButton *btn2 = new QPushButton(QString("按钮3"),this);btn2->setFixedSize(80, 50);btn2->move(btn->x() + btn->width(), btn->y() + btn->height());//btn2->setGeometry(btn->x() + 80, btn->y() + 50, 80, 50);}Widget::~Widget()
{}

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

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

相关文章

Python3 字符串

Python3 字符串 字符串是 Python 中最常用的数据类型。我们可以使用引号( 或 " )来创建字符串。 创建字符串很简单,只要为变量分配一个值即可。例如: var1 Hello World! var2 "Runoob" Python 访问字符串中的值 Python 不支持单字…

树莓派4B上安装Gitlab

参考连接: 树莓派上使用 GitLab 搭建专业 Git 服务 | 树莓派实验室 gitlab reconfigure 卡住 ruby_block[wait for redis service socket] action run_芹菜学长的博客-CSDN博客 以及用到了讯飞星火 系统版本信息 1.进入 giblab安装页面gitlab/gitlab-ce - Instal…

2023java面试深入探析Nginx的处理流程

推荐阅读 AI文本 OCR识别最佳实践 AI Gamma一键生成PPT工具直达链接 玩转cloud Studio 在线编码神器 玩转 GPU AI绘画、AI讲话、翻译,GPU点亮AI想象空间 资源分享 史上最全文档AI绘画stablediffusion资料分享 「java、python面试题」来自UC网盘app分享,打开手…

【深入探索Docker】:开启容器化时代的技术奇迹

深入探索Docker 深入探索Docker:开启容器化时代的技术奇迹前言1. 容器化:实现快速部署和可移植性2. 虚拟化:提高安全性和可靠性3. 映像:打包应用及依赖项的模板4. 网络管理:连接容器和主机5. 持久化数据:保…

软考:中级软件设计师:无线网,网络接入技术,ipv6

软考:中级软件设计师:无线网 提示:系列被面试官问的问题,我自己当时不会,所以下来自己复盘一下,认真学习和总结,以应对未来更多的可能性 关于互联网大厂的笔试面试,都是需要细心准备的 &#x…

Vue:插槽,与自定义事件

1.插槽slot <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</title> </head> <body> <div id"app"><!-- <p>列表书籍</p>--> <!-- …

重新认识Android中的线程

线程的几种创建方式 new Thread&#xff1a;可复写Thread#run方法。也可以传递Runnable对象&#xff0c;更加灵活。缺点&#xff1a;缺乏统一管理&#xff0c;可能无限制新建线程&#xff0c;相互之间竞争&#xff0c;及可能占用过多系统的资源导致死机或oom。 new Thread(new…

什么是 API ?

一、API 的定义&#xff1a;数据共享模式定义 4 大种类 作为互联网从业人员&#xff0c;API 这个词我耳朵都听起茧子了&#xff0c;那么 API 究竟是什么呢&#xff1f; API 即应用程序接口&#xff08;API&#xff1a;Application Program Interface&#xff09;&#xff0c;…

Linux(基础IO、文件权限、Makefile)

目录 1、man 手册 1.1 汉化 1.2 具体使用 2、文件权限 2.1 权限理解 2.2 文件详细信息查询 2.3 权限更改 3、常用函数接口 3.1 open 3.2 read 3.3 write 3.4 close 3.5 函数使用示例 4、make与Makefile 4.1 make 与 Makefile区别 4.2 Makefile的编写 5、vim简…

阿里云服务器搭建FRP实现内网穿透-P2P

前言 在了解frp - p2p之前&#xff0c;请先了解阿里云服务器搭建FRP实现内网穿透-转发: 文章地址 1、什么是frp - p2p frp&#xff08;Fast Reverse Proxy&#xff09;是一个开源的反向代理工具&#xff0c;它提供了多种功能&#xff0c;包括端口映射、流量转发和内网穿透等。…

归并排序之从微观看递归

前言 这次&#xff0c;并不是具体讨论归并排序算法&#xff0c;而是利用归并排序算法&#xff0c;探讨一下递归。归并排序的特点在于连续使用了两次递归调用&#xff0c;这次我们将从微观上观察递归全过程&#xff0c;从本质上理解递归&#xff0c;如果能看完&#xff0c;你一…

Wlan——STA上线流程与802.11MAC帧讲解以及报文转发路径

目录 802.11MAC帧基本概念 802.11帧结构 802.11MAC帧的分类 管理帧 控制帧 数据帧 STA接入无线网络流程 信号扫描—管理帧 链路认证—管理帧 用户关联—管理帧 用户上线 不同802.11帧的转发路径 802.11MAC帧基本概念 802.11协议在802家族中的角色位置 其中802.3标…

搭建开发环境-Windows

写C# 的请出去。 然后&#xff0c;Windows 是最好的Linux发行版。搭建开发环境-WSLUbuntu

【Git Bash】简明从零教学

目录 Git 的作用官网介绍简明概要 Git 下载链接Git 的初始配置配置用户初始化本地库 Git 状态查询Git 工作机制本地工作机制远端工作机制 Git 的本地管理操作add 将修改添加至暂存区commit 将暂存区提交至本地仓库日志查询版本穿梭 Git 分支查看分支创建与切换分支跨分支修改与…

Redisi缓存的击穿、穿透、雪崩,介绍一下

缓存击穿 缓存击穿是指在高并发场景下&#xff0c;缓存中的某个 key 失效&#xff0c;此时大量请求同时涌入数据库查询该 key 的数据&#xff0c;导致数据库瞬间压力过大&#xff0c;甚至宕机。缓存击穿的最佳解决方案是使用互斥锁&#xff0c;令只有一个线程可以从数据库中查…

leetcode500. 键盘行

【简单题】 给你一个字符串数组 words &#xff0c;只返回可以使用在 美式键盘 同一行的字母打印出来的单词。键盘如下图所示。 美式键盘 中&#xff1a; 第一行由字符 "qwertyuiop" 组成。第二行由字符 "asdfghjkl" 组成。第三行由字符 "zxcvbnm&…

React 面试题集锦

目录 如果想要在组件第一次加载后获取该组件的dom元素&#xff0c;应当在以下哪个生命周期中进行 React支持的键盘事件是 使用严格模式&#xff08;Strict Mode&#xff09;优点 React 动态引入组件 当使用ReactDOM.unmountComponentAtNode从DOM中卸载组件时 说一下useS…

Nacos集群

需要与Nginx配合。 这是使用三个Nacos来搭建集群。 创建mysql数据库nacos。 配置Nacos 进入nacos的conf目录&#xff0c;修改配置文件cluster.conf.example&#xff0c;重命名为cluster.conf。 在cluster.conf文件的最后加上&#xff1a; #it is ip #example 127.0.0.1:8…

通俗理解DDPM到Stable Diffusion原理

代码1&#xff1a;stabel diffusion 代码库代码2&#xff1a;diffusers 代码库论文&#xff1a;High-Resolution Image Synthesis with Latent Diffusion Models模型权重&#xff1a;runwayml/stable-diffusion-v1-5 文章目录 1. DDPM的通俗理解1.1 DDPM的目的1.2 扩散过程1.3 …

测试框架pytest教程(6)钩子函数hook开发pytest插件

pytest hook 函数也叫钩子函数&#xff0c;pytest 提供了大量的钩子函数&#xff0c;可以在用例的不同生命周期自动调用。 比如&#xff0c;在测试用例收集阶段&#xff0c;可利用 hook 函数修改测试用例名称的编码。 pytest的hook是基于Python的插件系统实现的&#xff0c;使…