QWidget成员函数功能和使用详细说明(二)(文字+用例+代码+效果图)

news2025/3/1 1:36:40

文章目录

  • 1.测试工程配置
  • 2.成员函数
    • 2.1 void setFixedHeight(int h)
    • 2.2 void setFixedSize(const QSize &s)
    • 2.3 void setFixedSize(int w, int h)
    • 2.4 void setFixedWidth(int w)
    • 2.5 void setFocus(Qt::FocusReason reason)
    • 2.6 void setFocusPolicy(Qt::FocusPolicy policy)
    • 2.7 void setFocusProxy(QWidget *w)
    • 2.8 bool hasFocus() const
    • 2.9 void QWidget::clearFocus()
    • 2.10 QWidget *QWidget::focusWidget() const

1.测试工程配置

创建名为QtGuiAppTest的qwidget工程,带ui文件
在这里插入图片描述

2.成员函数

继承自QObject和QPaintDevice。QObject详见QObject各成员函数功能详细说明(文字+用例+代码+效果图)

2.1 void setFixedHeight(int h)

(1)功能说明
在不更改宽度的情况下将小部件的最小和最大高度设置为 h
(2)效果展示
在这里插入图片描述

(3)调用程序

QtGuiAppTest::QtGuiAppTest(QWidget *parent)
    :  QWidget(parent)
{
   
    ui.setupUi(this);
    this->setFixedHeight(300);
}

2.2 void setFixedSize(const QSize &s)

(1)功能说明
设置控件的最大与最小尺寸为s,从而防止窗口变化
(2)效果展示
在这里插入图片描述

(3)调用程序

QtGuiAppTest::QtGuiAppTest(QWidget *parent)
    :  QWidget(parent)
{
   
    ui.setupUi(this);
    this->setFixedSize(QSize(600, 400));
}

2.3 void setFixedSize(int w, int h)

重载函数
设置控件的宽度为w,高度为h

2.4 void setFixedWidth(int w)

设置控件的宽度为w

2.5 void setFocus(Qt::FocusReason reason)

(1)功能说明
将焦点设置在当前控件上(立即生效),并给出焦点改变原因reason,该信息可在focusInEvent()中即时获取到。
参数reason为枚举,具体如下:

常量名 常量值 描述
Qt::MouseFocusReason 0 由于鼠标点击改变了焦点
Qt::TabFocusReason 1 由于按下 Tab 键改变了焦点
Qt::BacktabFocusReason 2 此输入(可能包括 Shift 或 Control 键;例如 Shift+Tab)改变了焦点
Qt::ActiveWindowFocusReason 3 使此窗口处于活动状态或处于非活动状态从而改变了焦点
Qt::PopupFocusReason 4 应用程序打开/关闭了一个抓取/释放了键盘焦点的弹出窗口导致焦点改变
Qt::ShortcutFocusReason 5 用户键入了标签的伙伴关系快捷方式导致焦点改变
Qt::MenuBarFocusReason 6 菜单栏成为焦点
Qt::OtherFocusReason 7 其他reason,通常是特定于应用程序的。

(2)效果展示
在这里插入图片描述

(3)调用程序
QtGuiAppTest.ui
在这里插入图片描述

QtGuiAppTest.h

#pragma once
#include <QtWidgets/QWidget>
#include "ui_QtGuiAppTest.h"
#include<qlineedit.h>
class MyLineEdit : public QLineEdit
{
   
    Q_OBJECT
public:
    MyLineEdit(QWidget* parent = nullptr);
protected:
    void focusInEvent(QFocusEvent* event) override;
    void focusOutEvent(QFocusEvent* event) override;
};
class QtGuiAppTest : public QWidget
{
   
    Q_OBJECT
public:
    QtGuiAppTest(QWidget *parent = Q_NULLPTR);
    ~QtGuiAppTest();
public slots:
    void SlotTestFocus(int id);
private:
    Ui::QtGuiAppTestClass ui;
    MyLineEdit* m_pLe;
};

QtGuiAppTest.cpp

#include "QtGuiAppTest.h"
#include<qlineedit.h>
#include<qevent.h>
QtGuiAppTest::QtGuiAppTest

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

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

相关文章

【LeetCode算法】第101题:对称二叉树

目录 一、题目描述 二、初次解答 三、官方解法 四、总结 一、题目描述 二、初次解答 1. 思路&#xff1a;递归判定左子树和右子树是否对称。用一个新函数sym来递归判定左子树和右子树是否对称。该函数细节&#xff1a;判定当前传入的两个根节点是否为空&#xff0c;若均为空…

移动电商服务器单点部署

知识图谱 任务一&#xff1a;Web服务器部署 1.知识结构 2.WEB服务器的介绍 Web服务器一般指网站服务器&#xff0c;是指驻留于因特网上提供某种特定类型计算机的程序&#xff0c;Web服务器可以向浏览器等Web客户端提供文档&#xff0c;也可以放置网站文件&#xff0c;让全世界…

23种软件设计模式——工厂模式

工厂模式 工厂模式&#xff08;Factory Pattern&#xff09;是 Java 中最常用的设计模式之一&#xff0c;它提供了一种创建对象的方式&#xff0c;使得创建对象的过程与使用对象的过程分离。 工厂模式提供了一种创建对象的方式&#xff0c;而无需指定要创建的具体类。 通过使…

laravel项目配置Facades Redis自动补全,方法查看

问题原因: 因为Laravel的Redis连接实例是通过RedisManger的工厂类创建的,返回的是一个mixin的类型,因此在IDE中不能自动补全Redis的方法,缺少这个功能,使用起来有些麻烦,尤其是Redis有数十个方法,每个方法也有不少参数。 相关部分的代码如下: /*** @mixin \Illumina…

【Python】解决Python报错:AttributeError: ‘generator‘ object has no attribute ‘xxx‘

&#x1f9d1; 博主简介&#xff1a;阿里巴巴嵌入式技术专家&#xff0c;深耕嵌入式人工智能领域&#xff0c;具备多年的嵌入式硬件产品研发管理经验。 &#x1f4d2; 博客介绍&#xff1a;分享嵌入式开发领域的相关知识、经验、思考和感悟&#xff0c;欢迎关注。提供嵌入式方向…

python weakref的应用举例

问题: 有很多时候, 我们想拥有一个实例, 但是不增加引用计数. 怎么解决呢? 场景: 英雄击打怪物, 如果怪物在受到英雄打击前就死了, 我们可以在英雄的实例里面, 使用一个弱引用来引用怪物, 如果还存在就击打, 不存在就不击打.一般的ui系统都有事件系统, ui上触发一个事件, 然…

TCP协议详解及其相关的10个核心机制(面试重点)

TCP协议的报文格式 TCP协议有连接&#xff0c;可靠性传输&#xff0c;面向字节流&#xff0c;全双工。 他的数据格式如图&#xff1a; 根据他的数据格式&#xff0c;在这里我们只知道 16位源端口号&#xff08;表示客户端这里的端口号&#xff09;&#xff0c;16位目的端口号&…

Maven 中的 classifier 属性用过没?

最近训练营有小伙伴问到松哥一个关于 Maven 依赖的问题&#xff0c;涉及到 classifier 属性&#xff0c;随机问了几个小伙伴&#xff0c;都说工作中没用到过&#xff0c;因此简单整篇文章和小伙伴们分享下。 Maven 大家日常开发应该都有使用&#xff0c;Maven 中有一个比较好玩…

读:《An Overview of Diffusion Models Applications……》导览

读&#xff1a;《An Overview of Diffusion Models: Applications,Guided Generation, Statistical Rates and Optimization》 简单说明 这篇文章也是关于 Diffusion 模型的综述&#xff0c;但是这一篇讲的显然不如 2022出的这篇综述 [2209.00796] Diffusion Models: A Compreh…

微信小程序-网络数据请求(配置request合法域名)

1.小程序中网络数据请求的限制 出于安全方面的考虑&#xff0c;小程序官方对数据接口的请求做出了如下两个限制&#xff1a; &#xff08;1&#xff09;只能请求HTTPS类型的接口 &#xff08;2&#xff09;必须将接口的域名添加到信任列表中 如果要请求某个域名下的接口&am…

优化基础(二):线性组合、仿射组合、锥组合、凸组合、线性集合、仿射集合、锥集合、凸集合的理解

文章目录 前言组合线性组合 (linear combination)仿射组合 (affine combination)锥组合 (conic combination)凸组合 (convex combination) 集合仿射集合凸集合 练习&#xff1a;哪个图形是凸的&#xff0c;哪个是仿射的&#xff1f;参考资料 前言 组合侧重于描述由一些基点生成…

MySQL数据库--从创建数据库到删库跑路

目录 MySQL安装: 1. 数据库基本操作1.1 创建数据库1.2 显示当前数据库1.3 删除数据库1.4 使用数据库/选中数据库 2. SQL中的数据类型2.1 数值类型2.2 字符串类型2.3 时间类型 3. 表的操作3.2 创建表3.1 显示数据库中的表3.3 查看表的详细情况3.4 删除表3.5 注释3. 修改列(了解即…

超大功率光伏并网逆变器学习(三相)

1.超大功率用的IGBT开关频率通常很低,比如6KHz 2.线电压和相电压的关系 相电压 A AB线电压-CA线电压 相电压 B BC线电压-AB线电压 相电压 C CA线电压-BC线电压 3.坐标变换 ABC三相信号通过Clark坐标变换得到αβ两相静止信号,其中α与A相重合,β与α…

用任务监听RTOS各任务的运行状态

使用rtos时内存对于单片机来说总是非常抠搜的。 任务分配多了浪费&#xff0c;少了跑不动。 最近看到这个监听任务还是很好用的。 废话不多说。开始操作 第一步在配置文件中打开这几个宏 #define configUSE_TRACE_FACILITY 1 /*为1时启用可视化跟踪调试*/ #define conf…

VBA代码解决方案第十四讲 如何利用VBA检查单元格中是否含有公式

《VBA代码解决方案》(版权10028096)这套教程是我最早推出的教程&#xff0c;目前已经是第三版修订了。这套教程定位于入门后的提高&#xff0c;在学习这套教程过程中&#xff0c;侧重点是要理解及掌握我的“积木编程”思想。要灵活运用教程中的实例像搭积木一样把自己喜欢的代码…

[论文笔记]MemGPT: Towards LLMs as Operating Systems

引言 今天介绍一篇论文MemGPT: Towards LLMs as Operating Systems。翻过过来就是把LLM看成操作系统。 大语言模型已经在人工智能领域引起了革命性的变革&#xff0c;但受到有限上下文窗口的限制&#xff0c;在扩展对话和文档分析等任务中的效用受到了阻碍。为了能够利用超出…

短视频自己怎么配音:四川京之华锦信息技术公司

短视频自己怎么配音&#xff1a;揭秘配音技巧与创作流程 在短视频盛行的当下&#xff0c;配音作为提升视频质量、增强观众体验的重要环节&#xff0c;越来越受到创作者的关注。四川京之华锦信息技术公司将为您详细解读如何为短视频自己配音&#xff0c;包括配音技巧、创作流程…

echarts学习:将echats实例代理为响应式对象可能带来的风险

1.起源 最近我在学习如何封装echarts组件&#xff0c;我所参考的其中一篇博客中提到了一个“图表无法显示的问题”。 根据其中的介绍&#xff0c;造成此种问题的原因是因为&#xff0c;使用ref接受了echarts实例&#xff0c;使得echarts实例被代理为了响应式对象&#xff0c;进…

【移动端】商场项目路由设计

1&#xff1a;路由设计配置&#xff1a; 一级路由配置 分析项目&#xff0c;设计路由&#xff0c;配置一级路由 一级路由&#xff1a;单个页面独立展示的&#xff0c;都是一级路由&#xff0c;例如&#xff1a;登录页面&#xff0c;首页架子&#xff0c;报错页面 二级路由&…

特征工程技巧——OneHot编码

我们以Kaggle比赛里面的一个数据集跟一个公开代码为例去解释我们的OneHot编码。 简单来说&#xff0c;独热编码是一种将类别型变量转换为二进制表示的方法&#xff0c;其中每个类别被表示为一个向量&#xff0c;向量的长度等于类别的数量&#xff0c;其中只有一个元素为1&…