自学内容网 自学内容网

【Qt】控件——Qt控件的介绍、QWidget的介绍、QWidget的属性、QWidget的函数

Qt

在这里插入图片描述
  

1. 控件的概念

  Widget 是 Qt 中的核心概念。英文原义是 “小部件”,我们此处也把它翻译为 “控件”。控件是构成一个图形化界面的基本要素。按钮、列表视图、输入框,、滚动条、下拉框等。都可以称为 “控件”。Qt内置了大量的常用控件。

  

2. QWidget

enabled

  设置控件是否可使用。true 表示可用,false 表示禁用。

  isEnabled () 获取到控件的可用状态。

  setEnabled 设置控件是否可使用。true 表示可用,false 表示禁用。

  

  示例:创建一个按钮并且设置为禁用状态。

  1. 创建一个按钮并且设置setEnabled是否可以,true为可用,false为不可用。

在这里插入图片描述

  

  示例:创建两个按钮,其中一个按钮可以控制另一个按钮的禁用状态。

  1. 我们在父类Widget中创建两个按钮类QPushButton。

在这里插入图片描述
  

  1. 调整按钮的位置和大小,并且连接信号槽,btn1是被控制的按钮,当btn1未被禁用时,点击btn1会触发信号槽输出 " 按下按钮btn1 "。btn2是控制按钮,点击可以切换btn1的禁用状态。

在这里插入图片描述

  

  1. 运行程序,实现了示例的要求。
    在这里插入图片描述

  

geometry

  位置和尺寸,包含 x、y、width、height 四个部分。其中坐标是以父元素为参考进行设置的。

  位置和尺寸,是四个属性的统称:

  • x 横坐标
  • y 纵坐标
  • width 宽度
  • height 高度

  

在这里插入图片描述
  

  示例:创建上下左右四个按键,点击按钮可以控制Target向对应的方向移动。

  1. Qt可以通过代码或可视化界面创建控件,这里使用可视化界面创建所需要的控件。

在这里插入图片描述

  

  1. 对上下左右四个方向的按钮关联信号槽,控制上下左右位置的变化,要注意这里是先获取Target的原始位置进行调整,如果不想让Target发生形变,必须保持rect.width()和rect.height()不变,只改变Target的位置。

在这里插入图片描述
  

  1. 可以看到我们可以控制Target的位置移动了。

在这里插入图片描述

  

windowTitle

  设置 widget 标题。
  

  1. 直接使用setWindowTitle设置标题名即可。

在这里插入图片描述
  

windowIcon

  设置 widget 图标。

  设置图标时,我们必须导入图片到我们的项目中,当然可以直接使用决定路径,但是Qt提供qrc机制管理静态资源。

  
  qrc是qt的资源管理方案:

  qrc 文件是一种 XML 格式的资源配置文件,用 XML 记录硬盘文件及对应资源名称,应用程序通过资源名称访问资源。在 Qt 开发中可将资源文件添加到项目以便访问和管理,资源文件可在 qrc 文件所在目录同级或子目录下。构建程序时,Qt 把资源文件二进制数据转成 cpp 代码编译到 exe 中,使依赖资源 “路径无关”。
  
  优点:确保了图片、字体、声音等资源能够真正做到 “目录无关”,无论如何都不会出现资源丢失的情况。

  缺点:不适合管理体积大的资源。如果资源比较大(比如是几个 MB 的文件),或者资源特别多,生成的最终的 exe 体积就会比较大,程序运行消耗的内存也会增大,程序编译的时间也会显著增加。
  

  1. 创建一个新文件,要创建Qt Resource File。

在这里插入图片描述

  

  1. 设置文件名。

在这里插入图片描述
  

  1. 打开该文件,并且设置保存图片的路径,简单一点即可。

在这里插入图片描述
  

  1. 添加我们需要的文件即可。

在这里插入图片描述

  

  1. 添加成功了,有了资源的路径就可以在我们的项目中使用了。

在这里插入图片描述

  

  1. QIcon是图像对象,用我们复制的路径创建一个新的QIcon并且设置到Widget,可以看到窗口的图标就改变了。
    在这里插入图片描述

  

windowOpacity

  设置 widget 透明度。
  

  1. 使用setWindowOpacity调整窗口的透明度。

在这里插入图片描述

  

cursor

  鼠标悬停时显示的图标形状,可以是普通箭头、沙漏、十字等形状,在 Qt Designer 界面中可清楚看到可选项。
  

  1. setCursor用来设置鼠标悬停图标,这里截图没有显示。

在这里插入图片描述

  

font

  字体相关属性,涉及字体家族、字体大小、粗体、斜体、下划线等样式。
  

  1. 设置字体

在这里插入图片描述
  

toolTip

  鼠标悬停在 widget 上会在状态栏中显示的提示信息。

ui->label1->setToolTip("这是文字");

  

toolTipDuring

  toolTip 显示的持续时间。

ui->label1->setToolTipDuration(3000);

  

styleSheet

  允许使用 CSS 来设置 widget 中的样式,Qt 中支持的样式非常丰富,对于前端开发人员上手非常友好。
  

  编辑右侧的 styleSheet 属性, 设置样式:

在这里插入图片描述

  

在这里插入图片描述

            


原文地址:https://blog.csdn.net/Crocodile1006/article/details/143054313

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!