编程语言
首页 > 编程语言> > QML小程序:按键元素

QML小程序:按键元素

作者:互联网

按键盘上,下,左,右键,移动矩形框
按键盘+,-键,缩放矩形框
演示如下:
在这里插入图片描述
main.qml

import QtQuick 2.12
import QtQuick.Window 2.12

//按键盘上,下,左,右键,移动矩形框
//按键盘+,-键,缩放矩形框

//窗口
Window {
    visible: true   //窗口可见
    width: 640  //窗口宽度
    height: 480 //窗口高度
    title: qsTr("Key")  //窗口标题

    //深色背景区域
    DarkRectangle {

        //绿色矩形框
        GreenRectangle {
            id: greenRect   //绿色矩形框id
            x:8; y:8    //绿色矩形框位置
        }
        focus: true //绿色矩形框焦点
        Keys.onLeftPressed: greenRect.x -= 8    //按左键,左移8个像素
        Keys.onRightPressed: greenRect.x += 8   //按右键,右移8个像素
        Keys.onUpPressed: greenRect.y -= 8  //按上键,上移8个像素
        Keys.onDownPressed: greenRect.y += 8    //按下键,下移8个像素
        Keys.onPressed: {
            switch(event.key){
            case Qt.Key_Plus:   //按+键,放大8个像素
                greenRect.scale += 0.2
                break;
            case Qt.Key_Minus:  //按-键,缩小8个像素
                greenRect.scale -= 0.2
                break;
            }
        }
    }
}

DarkRectangle.qml

import QtQuick 2.0

//组件,黑色矩形

//矩形框元素
Rectangle {
    width: 280   //矩形框宽度
    height: 240  //矩形框高度
    color: "black"    //矩形框颜色
    border.color: Qt.lighter(color) //矩形框边框颜色
}

GreenRectangle.qml

import QtQuick 2.0

//组件,绿色矩形框

//矩形框元素
Rectangle {
    width: 58   //矩形框宽度
    height: 38  //矩形框高度
    color: "green"  //矩形框颜色
    property alias text: label.text //文本别名,导出到外部使用

    //文本
    Text {
        id: label   //文本id
        anchors.centerIn: parent    //文本居中
        text: ""    //文本内容
    }
}

标签:Keys,元素,greenRect,像素,矩形框,color,QML,按键,import
来源: https://blog.csdn.net/luoting2017/article/details/123580481