qt qml

news2025/8/7 3:15:57

QT Quick是QT提供的一种高级用户界面工具包,包含对QML完美支持.

Qt Quick 就是使用 QML 构建的一套类库。

在这里插入图片描述

Qml模块本身并没有涉及图形显示,所有的图形处理都由Qt Quick模块完成。
QMl是一种高效的开发UI 的语言。QML(Qt Meta-Object Language,Qt元对象语言)是一种声明式编程语言,并且它是Qt框架的一个组成部分。 

单纯创建QML项目

在这里插入图片描述

在这里插入图片描述

 创建Qt Quick项目

这个是结合qt quick 和qt qml,使用empty.结合了c++的语法

在这里插入图片描述

#include <QGuiApplication>
#include <QQmlApplicationEngine>

int main(int argc, char *argv[])
{
    QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);

    QGuiApplication app(argc, argv);

    QQmlApplicationEngine engine;
    engine.load(QUrl(QStringLiteral("qrc:/main.qml")));
    if (engine.rootObjects().isEmpty())
        return -1;

    return app.exec();
}


import QtQuick 2.9
import QtQuick.Window 2.2

Window
{
    visible: true
    width: 640
    height: 480
    title: qsTr("Hello World")
}

quick 的组件

ApplicationWindow    对应QMainWindow,提供顶层应用程序窗口
MenuBar    对应QMenuBar,提供窗口顶部横向的菜单栏
StatusBar    对应QStatusBar,提供状态栏
ToolBar    对应QToolBar,提供工具栏,可以添加ToolButton和其它组件
Action    对应QAction,提供能够绑定到导航和视图的抽象的用户界面动作
ScrollView    对应QScrollView,提供滚动视图
SplitView    对应QSplitter,提供可拖动的分割视图布局
StackView    对应QStackedWidget,提供基于栈的层叠布局
TabView    对应QTabWidget,提供带有标签的基于栈的层叠布局
TableView    对应QTableWidget,提供带有滚动条、样式和表头的表格
Button    对应QPushButton,提供按钮组件
CheckBox    对应QCheckBox,提供复选框
ComboBox    对应QComboBox,提供下拉框
TabView    对应QTabWidget,提供带有标签的基于栈的层叠布局
GroupBox    对应QGroupBox,提供带有标题、边框的容器
Label    对应QLabel,提供标签组件
ProgressBar    对应QProgressBar,提供进度条组件
RadioButton    对应QRadioButton,提供单选按钮
Slider    对应QSlider,提供滑动组件
SpinBox    对应QSpinBox,提供微调组件
Switch    提供类似单选按钮的开关组件
TextArea    对应QTextEdit,提供能够显示多行文本的富文本编辑框
TextField    对应QTextLine,提供显示单行文本的纯文本编辑框
ToolButton    对应QToolButton,提供在工具栏上显示的工具按钮

例子

import QtQuick 2.9
import QtQuick.Window 2.2

Window
{
    id:root
    visible: true
    width: 640
    height: 480
    title: qsTr("Hello World")

    Text {

              text: "Hello, World!"
              color: "red"
              font.bold: true
              x:300;y:300
              width: root.width/3; height: 200
              font.pixelSize: 20
          }
    Image {
        id: name
        source: "./res/font.png"
        x:100;y:100
        width: 50; height:50

    }
}

id:是每个元素的标识,每个元素的id属性是唯一。子元素可以通过访问parent的id关键字访问父元素。
列表属性

如果只有一个元素,“[]”可以省略

Item {
    id: itemroot
    children:
    [
        Text{
            text: "aa"
        },
        Button {
            x:50;y:30
            id:bt1
            text: "bt"
        }
    ]
}

分组属性

Item {
    id: itemroot   
    Text{
        text: "aa"
    }
    Button {
        x:50;y:30
        id:bt1
        text: "bt"
    }        
}

附加属性

Item {
    id: itemroot
    Text{
        text: "aa"
        focus: true
        Keys.onPressed:{                  //附加属性
        console.log("TEST")}
    }
}

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

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

相关文章

对接建行支付

前两篇文章介绍了对接微信支付和农行支付的方法&#xff0c;这篇文章介绍一下建行支付。 使用场景&#xff1a; 在微信公众号中调用微信付款&#xff0c;或者公众号内页面调用龙支付或者H5页面支付。 一、微信支付 参考建行给的接口文档 交易流程如下&#xff1a; 按照接口要求…

sync_binlog和innodb_flush_log_at_trx_commit的区别

innodb_flush_log_at_trx_commi 这个指的是写redo及后续操作&#xff0c;ib_logfile这个文件的刷新方式。 sync_binlog纯粹指的是binlog &#xff0c;如 mysql-bin0003等。 基于innodb_flush_log_at_trx_commit 的三个参数的解释。 Innodb_flush_log_at_trx_commit 0 redolo…

代码随想录59——单调栈:503下一个更大元素II、42接雨水

文章目录1.503下一个更大元素II1.1.题目1.2.解答2.42接雨水2.1.题目2.2.解答2.2.1.双指针for循环解法2.2.3.单调栈解法1.503下一个更大元素II 参考&#xff1a;代码随想录&#xff0c;503下一个更大元素II&#xff1b;力扣题目链接 1.1.题目 1.2.解答 做本题之前建议先做 73…

Spring Boot 集成freemarker模板引擎

前言 J2EE的领域中包含5大引擎&#xff0c;分别为模板引擎、流程引擎、搜索引擎、规则引擎、报表引擎。每种引擎都能解决某一方面的问题&#xff0c;模板引擎解决的是用户界面与业务数据分离&#xff0c;流程引擎解决的是驱动业务按照一定的流程执行&#xff0c;搜索引擎解决的…

局部线性分析(机器学习)

目录 局部线性嵌入&#xff08;LLE&#xff09; 局部线性嵌入&#xff08;LLE&#xff09;算法的主要步骤分为三步 效果如下 局部线性嵌入&#xff08;LLE&#xff09; 局部线性嵌入&#xff08;LLE&#xff09;是一种非线性降维算法 它能够使降维后的数据较好地保持原有流…

大学生HTML个人网页作业作品:基于html css实现围棋网页(带报告4800字)

&#x1f389;精彩专栏推荐 &#x1f4ad;文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 &#x1f482; 作者主页: 【主页——&#x1f680;获取更多优质源码】 &#x1f393; web前端期末大作业&#xff1a; 【&#x1f4da;毕设项目精品实战案例 (10…

动静态链接动静态库制作与使用

前置知识 程序的编译与链接&#xff1a;动静态库属于程序链接阶段的概念&#xff0c;如果对程序的编译链接过程不太熟悉&#xff0c;可以先看一下着篇文章gcc&动静态链接&#xff1a;这篇文章讲解了如何在Linux环境下用gcc完成编译链接的每一步操作 链接库 在链接的过程…

Java对象内存结构和创建过程

文章目录对象的内存布局对象头Mark WordKlass Pointer实例数据对齐数据对象的创建总结对象的内存布局 我们的对象一般存储在我们的堆内存中&#xff0c;我们把实例对象可以划分为对象头&#xff0c;实例数据&#xff0c;对齐填充 对象头&#xff08;object header&#xff09…

SpringBoot+Vue项目流浪狗领养管理系统的设计与实现

文末获取源码 开发语言&#xff1a;Java 使用框架&#xff1a;spring boot 前端技术&#xff1a;JavaScript、Vue 、css3 开发工具&#xff1a;IDEA/MyEclipse/Eclipse、Visual Studio Code 数据库&#xff1a;MySQL 5.7/8.0 数据库管理工具&#xff1a;phpstudy/Navicat JDK版…

图像运算和图像增强十

图像运算和图像增强十 图像锐化之 Sobel、Laplacian 算子实现边缘检测 &#xff08;1&#xff09;Sobel算子(一阶微分算子) Sobel算子是一种用于边缘检测的离散微分算子&#xff0c;它结合了高斯平滑和微分求导。该算子用于计算图像明暗程度近似值&#xff0c;根据图像边缘旁…

top命令应用(查看进程实时动态信息)

记录&#xff1a;321 场景&#xff1a;在CentOS 7.9操作系统上&#xff0c;top命令是查看进程实时动态信息工具。查看进程状态、进程使用内存状况、进程使用CPU状况、进程PID等。 版本&#xff1a; 操作系统&#xff1a;CentOS 7.9 1.top命令介绍 top命令&#xff0c;查看…

内存、指针与数组

C语言的指针可以当成一个特殊的数据类型&#xff08;像int一样的数据类型&#xff09;&#xff0c;可以说其唯一的作用就是为了存储地址&#xff0c;其他的都可以当作它的衍生用法。 指针的诸多功能都是基于其能直接操作指定内存空间存储的值&#xff0c;每个程序运行都会由操作…

git新建仓库提交项目代码+常用命令

一&#xff1a;新建仓库 输入一下仓库名称&#xff0c;归属和路径都是生成的不需要自己去编辑 点击创建就创建了一个新的仓库&#xff0c;下面就是仓库刚创建好的样子 二&#xff1a;向仓库里提交项目代码 首先打开你要提交的项目文件&#xff1a; 根据官方的提示去提交代码&…

Linux:shell编程2(内含:1.设置环境变量+2.位置参数变量+3.预定义变量+运算符+4.条件判断)

写在开头&#xff1a; 小技巧&#xff1a;除了赋值不加空格&#xff0c;其他的&#xff0c;例如是[ ] ()等都需要空格&#xff01; 1.设置环境变量&#xff1a; 注&#xff1a;类似于C语言全局变量 案例1&#xff1a;在/etc/profile文件中定义TOMCAT_HOME环境变量。 解释&…

洛谷 模拟 普及-

文章目录&#x1f4a5;前言&#x1f609;解题报告&#x1f4a5;一、快乐水&#x1f914;一、题意及思路:&#x1f60e;二、源码&#xff1a;&#x1f62e;三、代码分析&#xff1a;&#x1f4a5;二、漂亮的绝杀&#x1f914;一、题意及思路:&#x1f60e;二、源码&#xff1a;&…

小学生python游戏编程arcade----坦克大战2

小学生python游戏编程arcade----坦克大战2前言多摄象头显得分&#xff0c;title地图加载&#xff0c;精灵分层管理&#xff0c;移动精灵1、提示框制作1.1养眼绿色1.2 画距形提示框1.3 效果图1.4 提示框加提示2、子弹计数问题2.1 初始时给一定的子弹量2.2 发射子弹时进行控制2.3…

hevc 半像素

1 分数像素精度运动估计 物体在连续帧间的运动是连续的&#xff0c;而像素本身是离散的&#xff0c;这种现象带来了一个问题&#xff0c;当前帧中图像块的最佳参考块不一定位于参考帧的证书像素点位置&#xff0c;为了更加精确的预测当前带编码的图像块&#xff0c;有必要在非整…

海运整柜出口操作流程有哪些注意事项?

货物运输时&#xff0c;海运是一种非常常见的形式&#xff0c;根据货物的不同&#xff0c;海运也有很多形式的货物装运&#xff0c;海运整柜就是其中之一。 海运整柜大致分为20GP/40/GP/40HQ。是指只有一个发货人将整箱货物运到目的港&#xff0c;比较容易竞争。发货人负责装箱…

IntentService 源码理解

一、概述 本篇文章讲解的是分析IntentService源码并使用&#xff0c;安卓API迭代更新的太快&#xff0c;IntentService已经在Android8.0 (API 26)之后就不推荐使用了&#xff0c;在Android API 30正式弃用&#xff0c;官方建议用JobIntentService 或 WorkManager替代&#xff0…

为什么要少用全局变量

为什么要少用全局变量&#xff1f;甚至有些公司禁止用全局变量。有一个说法是这样的&#xff0c;全局变量的最佳前缀是什么&#xff1f;答&#xff1a;// 接下来就粗略说说这个问题。 1、全局变量和局部变量 &#xff08;1&#xff09;全局变量&#xff1a;定义在函数外&…