首页 > 其他分享 >qt Qml qml Property的使用方法

qt Qml qml Property的使用方法

时间:2024-04-07 14:33:56浏览次数:21  
标签:Property qt color myrec qml import property id anchors

9.property

简介:

自己声明一个变量名,自己赋值,外部可以对其赋值

可以声明一个属性变量

int

string

var

double

等等

也可以声明一个控件用于外部写入到本qml

rectangle

component

等等

其他:

在property前面可以加readonly就可以只能外部访问,不能修改

在property前面可以加required就可以在外部创建这个属性后才能建立子控件,如果没创建就报错

注意:属性的name不能首字母大写

property可以声明的属性变量里有个特殊的 就是 alias​ 可以去声明一个控件的一个属性,方便外部修改

示例代码:

My_rec_1.qml

import QtQuick 2.0

Rectangle{

    id:outrec
    property color mycolor: "red"
    property int myheight:100
    readonly property int mywidth:200
    required property Component mycomponent
    property alias newinrec: inrec
    property alias newinrec_leftMargin: inrec.anchors.leftMargin
    width: mywidth
    height: myheight
    color: "blue"
    Loader {
    id:loader
    sourceComponent: mycomponent}
    Rectangle{
        id:inrec
        color:mycolor
        anchors.fill:parent
        anchors.topMargin: 20
        anchors.bottomMargin: 20
        anchors.leftMargin: 20
        anchors.rightMargin: 10
    }


}

main.qml

import QtQuick 2.15
import QtQuick.Window 2.15
import QtQuick.Controls 2.15

Window {
    visible: true
    width: 800
    height: 600
    title: qsTr("Hello scan")
    color: "gray"
    Component{
        id:com
        Button{
            width:50
            height: 25}}
    My_rec_1{
        id:myrec
        mycomponent: com
        Component.onCompleted: {console.log(mywidth)}
    }
    MouseArea{width:100
        height: 50
        x:500
        Rectangle{
            anchors.fill: parent
            color:"red"
        }
        onClicked: {
            myrec.newinrec.anchors.bottomMargin = 50
            myrec.myheight = 400
            myrec.newinrec_leftMargin = 0
        }
    }
}

标签:Property,qt,color,myrec,qml,import,property,id,anchors
From: https://blog.csdn.net/weixin_60755571/article/details/137462775

相关文章

  • qt Qml qml MouseArea的属性和信号方法
    Mousearea属性:​acceptedButtons:​接受的鼠标按键,默认是左键Qt.LeftButton|Qt.RightButton|Qt.AllButtons等等​pressedButtons:​按下的是什么键?左键or右键等Rectangle{color:"yellow"anchors.centerIn:parentwidth:200hei......
  • 毕业设计程序开源 Spring Boot+vue.js+Echart+mysql +QT+halcon
    1.介绍 涉及到的技术框架比较多,但是也不难,相关技术需要些基础。目前还是个半成品,还有些数据图表和QT功能没做完善,本来想在前端部分做大数据分析平台的,后续有空再完善。下面简单介绍一下。源代码此处:链接:https://pan.baidu.com/s/1904kLOv4EDJkcBuuNe1jqw?pwd=6666 提取码:6......
  • Pyqt5-tools(安装失败解决方法)
    1.安装失败原因: 2022年2月目前pyqt5能在python3.10环境安装的成功的版本是5.15.6,而pyqt5-tools的最新版本是:pyqt5-tools5.15.4.3.2,因为python3.10只能安pyqt55.15.6,这就限制了pyqt5-tools安装会失败,最简单的办法是降低python的版本到3.9或3.8!安装pyqt6也一样解决不了,已......
  • Qt血的教训/细数Qt开发的各种坑/又爱又恨/欢迎围观留言评论
    一、吐槽总结搞Qt开发十几年了,最初从Qt4.6开始,一直追新到现在的6.7版本,中间经历过无数的血的教训,简直是又爱又恨。其实Qt挺好的,但是还是要忍不住吐槽一下,本人还是希望Qt发展的越来越好,这样我的饭碗就能保住了。1.版本众多Qt的版本多到你数都数不清,多到你开始怀疑人生。Qt版......
  • qt 设置QSS样式汇总
    参考博客1:【QT】史上最全最详细的QSS样式表用法及用例说明 参考博客2:QFrame样式  参考博士3:Qt前端技术:3.QSS字体样式......
  • OpenCV中表示图像的类Mat在QT里的基本使用
    在Qt中使用OpenCV的Mat类来表示和处理图像是相对简单的,因为Qt和OpenCV都是跨平台的,并且可以很好地在一起工作。以下是如何在Qt项目中使用OpenCV的Mat类的基本步骤:1.在Qt代码中包含OpenCV头文件在Qt的源代码文件中,你需要包含OpenCV的头文件以及opencv统一的命名空间来使用Mat......
  • 【Qt 学习笔记】详解Qt中的信号和槽
    博客主页:DuckBro博客主页系列专栏:Qt专栏关注博主,后期持续更新系列文章如果有错误感谢请大家批评指出,及时修改感谢大家点赞......
  • QT和C++排列组合
    界面比较简洁,如有需要请大家自行完善!!!头文件#pragmaonce#include<QtWidgets/QMainWindow>#include"ui_text.h"classtext:publicQMainWindow{  Q_OBJECTpublic:  text(QWidget*parent=nullptr);  ~text();  voidParseStringToVector(con......
  • 使用pyqt,opencv,matplotlib开发一个图片浏览器!
    使用python开发一个图片浏览器!作用效果代码作用读取图片到界面并显示,对与宽度或高度大于600像素的图片进行等比缩小,让图片适合显示到界面;输出图片的基础信息,大小和颜色通道;绘制图片的单颜色通道直方图;效果颜色直方图有记忆功能,方便做对比代码importcopyimpor......
  • 使用OpenCV和PyQT编写的图片显示器,实现图片选择显示和保存
    使用OpenCV和PyQT编写的图片显示器简要效果代码简要为了避免重复编写pyqt控件,先写好此代码,方便使用。实现了以下基础功能:选择图片显示图片保存图片效果选择图片:显示图片:保存图片:代码importcopyimportcv2importsysfromPyQt5.QtWidgetsimport(......