Qml之自定义Button

news2025/1/21 0:53:33

Qml之自定义Button

  • 前言
  • 一、图标Button
  • 二、字体Button
    • 1.重写Background和ContentItem
    • 2.采用ButtonStyle


前言

提示: 自定义Button控件如何分为带图片的Iconbutton和原生控件重写的Button。最终效果如下:

例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。


提示:以下是本篇文章正文内容,下面案例可供参考

一、图标Button

import QtQuick 2.15
import QtQuick.Controls 2.15

Item {
   
    id: item1
    property alias imageProperty: image_Rect
    property alias imageBasic: id_image

    property real scale: 1.0  // 图片的缩放比例

    property int imageWidth: 32 // 图片宽度
    property int imageHeight: 32 // 图片高度
    property string imageSource: ""  // 图片资源
    property int radiusSize: 10 // 圆角值
    property color bordercolor: "#99CCCC"//图标border
    property int btnSize: 16// 图标下方字体尺寸
    property string btnfontfamily: "黑体"//文字字体
    property string buttonName: "Test"//button 名称

    signal clicked  // 点击信号
    signal pressed  // 按下信号
    signal released // 松开信号

    Rectangle {
   

        id: image_Rect
        width: item1.imageWidth+2
        height: item1.imageHeight+2

        radius: item1.radiusSize
        border.width: 1
        border.color: bordercolor
        /*
            Image.Stretch: 将图像拉伸以填充可用空间,不保持纵横比
            Image.PreserveAspectFit: 保持图像的纵横比,将图像缩放到适合可用空间内的最大尺寸
            Image.PreserveAspectCrop: 保持图像的纵横比,将图像缩放到填充可用空间的最小尺寸,并裁剪超出可用区域的部分
            Image.Tile: 将图像平铺以填充可用空间,不进行缩放
            Image.TileVertically: 将图像垂直平铺以填充可用空间,不进行缩放
            Image.TileHorizontally: 将图像水平平铺以填充可用空间,不进行缩放
        */
        //图标
        Image {
   
            id: id_image
            source: item1.imageSource
            fillMode: Image.PreserveAspectFit
            anchors.centerIn: parent
            smooth:</

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

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

相关文章

DETR 【目标检测里程碑的任务】

paper with code - DETR 标题 End-to-End Object Detection with Transformers end-to-end 意味着去掉了NMS的操作&#xff08;生成很多的预测框&#xff0c;nms 去掉冗余的预测框&#xff09;。因为有了NMS &#xff0c;所以调参&#xff0c;训练都会多了一道工序&#xff0c…

【Linux基础开发工具】gcc/g++使用make/Makefile

目录 前言 gcc/g的使用 1. 语言的发展 1.1 语言和编译器自举的过程 1.2 程序翻译的过程&#xff1a; 2. 动静态库的理解 Linux项目自动化构建工具-make/makefile 1. 快速上手使用 2. makefile/make执行顺序的理解 前言 了解完vim编辑器的使用&#xff0c;接下来就可以尝…

解决Unity物体速度过快无法进行碰撞检测(碰撞检测穿透)

解决Unity物体速度过快无法进行碰撞检测&#xff08;碰撞检测穿透&#xff09; 一、解决碰撞检测穿透方法一Collision Detection碰撞检测总结&#xff1a; 二、解决碰撞检测穿透方法二 一、解决碰撞检测穿透方法一 首先我们知道只要是跟碰撞相关的基本都是离不开刚体 Rigidbod…

海康威视运行管理中心 Fastjson RCE

漏洞描述 海康威视运行管理中心系统存在低版本Fastjson远程命令执行漏洞&#xff0c;攻击者可在未鉴权情况下获取服务器权限&#xff0c;且由于存在相关依赖&#xff0c;即使服务器不出网无法远程加载恶意类也可通过本地利用链直接命令执行&#xff0c;从而获取服务器权限。 漏…

nodejs+vue+ElementUi会员制停车场车位系统

总之&#xff0c;智能停车系统使停车场管理工作规范化&#xff0c;系统化&#xff0c;程序化&#xff0c;避免停车场管理的随意性&#xff0c;提高信息处理的速度和准确性&#xff0c;能够及时、准确、有效的查询和修改停车场情况。 三、任务&#xff1a;小组任务和个人任务 智…

vue3 登录页和路由表开发

目录 应用场景/背景描述&#xff1a; 开发流程&#xff1a; 详细开发流程&#xff1a; 总结/分析&#xff1a; 背景描述 在上一篇的基础上开始开发&#xff0c;element-plusvue3 上一篇说道详细迁移的过程&#xff0c;如下&#xff1a; 所以我这篇开始了第一步&#xff0c…

Shell编程从入门到实战

Shell 概述 &#xff08;1&#xff09;Linux 提供的 Shell 解析器有 [rootflinkTenxun ~]# cat /etc/shells&#xff08;2&#xff09;bash 和 sh 的关系 [rootflinkTenxun bin]# ll | grep bash&#xff08;3&#xff09;Centos 默认的解析器是 bash [rootflinkTenxun bin]…

从Maven初级到高级

一.Maven简介 Maven 是 Apache 软件基金会组织维护的一款专门为 Java 项目提供构建和依赖管理支持的工具。 一个 Maven 工程有约定的目录结构&#xff0c;约定的目录结构对于 Maven 实现自动化构建而言是必不可少的一环&#xff0c;就拿自动编译来说&#xff0c;Maven 必须 能…

安装nodejs,配置环境变量并将npm设置淘宝镜像源

安装nodejs并将npm设置淘宝镜像源 1. 下载nodejs 个人不喜欢安装包&#xff0c;所以是下载zip包的方式。这里我下载的node 14解压包版本 下载地址如下&#xff1a;https://nodejs.org/dist/v14.15.1/node-v14.15.1-win-x64.zip 想要其他版本的小伙伴去https://nodejs.org/di…

【C++】bind绑定包装器全解(代码演示,例题演示)

前言 大家好吖&#xff0c;欢迎来到 YY 滴C系列 &#xff0c;热烈欢迎&#xff01; 本章主要内容面向接触过C的老铁 主要内容含&#xff1a; 欢迎订阅 YY滴C专栏&#xff01;更多干货持续更新&#xff01;以下是传送门&#xff01; YY的《C》专栏YY的《C11》专栏YY的《Linux》…

7ADC模数转换器

一.模数转换原理 ADC模拟-数字转换器可以将引脚上连续变化的模拟电压转换成内存中存储的数字变量&#xff0c;建立模拟电路到数字电路的桥梁。另外一种是DAC既是与前面相反&#xff0c;如PWM波&#xff0c;由于PWM电路简单且没有额外的功率损耗&#xff0c;更适用于惯性系统的…

HarmonyOS4.0系统性深入开发02 UIAbility组件详解(上)

UIAbility组件概述 概述 UIAbility组件是一种包含UI界面的应用组件&#xff0c;主要用于和用户交互。 UIAbility组件是系统调度的基本单元&#xff0c;为应用提供绘制界面的窗口&#xff1b;一个UIAbility组件中可以通过多个页面来实现一个功能模块。每一个UIAbility组件实例…

基于Java SSM框架实现列车火车高铁票务信息管理系统项目【项目源码+论文说明】

基于java的SSM框架实现列车火车高铁票务信息管理系统演示 摘要 21世纪的今天&#xff0c;随着社会的不断发展与进步&#xff0c;人们对于信息科学化的认识&#xff0c;已由低层次向高层次发展&#xff0c;由原来的感性认识向理性认识提高&#xff0c;管理工作的重要性已逐渐被…

Linux学习笔记8-Uboot移植-网络设置和其他坑的解决

Linux之所以被称为操作系统&#xff0c;肯定是需要有引导程序来启动各个关键外设的运行&#xff0c;这里可以和个人电脑PC做个类比。我们在开机的时候是不是先要进入BIOS&#xff0c;BIOS在初始化硬盘、内存、USB接口、网口等之后&#xff0c;才可以进入Windows系统对吧&#x…

limma:单通道数据和RNA-seq数据差异性分析标准方法

前言 单通道数据极为流行&#xff0c;三大公司&#xff1a;Affymetrix、Illumina和Agilent的微阵列&#xff08;microarray&#xff09;技术产生的很多都是单通道数据。现在的主力的高通量测序机所产生的也是单通道数据&#xff0c;所以只要是被voom标准化&#xff08;包括了l…

Unity中Shader观察空间推导

文章目录 前言一、本地空间怎么转化到观察空间二、怎么得到观察空间的基向量1、Z轴向量2、假设 观察空间的 Y~假设~ (0,1,0)3、X Y 与 Z 的叉积4、Y X 与 Z 的叉积 三、求 [V~world~]^T^1、求V~world~2、求[V~world~]^T^ 四、求出最后在Unity中使用的公式1、偏移坐标轴2、把…

Redis可视化工具Redis Desktop Manager mac功能特色

Redis Desktop Manager mac是一款非常实用的Redis可视化工具。RDM支持SSL / TLS加密&#xff0c;SSH隧道&#xff0c;基于SSH隧道的TLS&#xff0c;为您提供了一个易于使用的GUI&#xff0c;可以访问您的Redis数据库并执行一些基本操作&#xff1a;将键视为树&#xff0c;CRUD键…

vcruntime140_1.dll文件下载安装方法分享,如何安全修复vcruntime140_1.dll

遇到vcruntime140_1.dll文件遗失是用户在使用Windows操作系统时较为普遍遭遇到的一个问题&#xff0c;它归类于动态链接库&#xff08;DLL&#xff09;文件缺失的常见情形。在今天的内容里&#xff0c;我们将深入探讨如何正确地下载和安装vcruntime140_1.dll文件&#xff0c;以…

《操作系统A》期末考试复习题——大题51-62(手写笔记)

51、如果限制为两道的多道程序系统中&#xff0c;有4个作业进入系统&#xff0c;其进入系统时刻、估计运行时间为下图所示。系统采用SJF作业调度算法&#xff0c;采用SRTF进程调度算法。作业进入系统时刻、估计运行时间如下&#xff1a; 作业 进入系统时刻 估计运行时间/min …

php反序列化漏洞原理、利用方法、危害

文章目录 PHP反序列化漏洞1. 什么是PHP反序列化漏洞&#xff1f;2. PHP反序列化如何工作&#xff1f;3. PHP反序列化漏洞是如何利用的&#xff1f;4. PHP反序列化漏洞的危害是什么&#xff1f;5. 如何防止PHP反序列化漏洞&#xff1f;6. PHP反序列化漏洞示例常见例子利用方法PH…