Qt Qml 汽车仪表

上一个原文连接http://blog.csdn.net/z609932088/article/details/53946245

 

参考资料连接:链接: https://pan.baidu.com/s/1pLjOTWB 密码: t9d1

 

 

 

唯一的问题就是在绘制仪表指针的时候有锯齿

 

换成qml可以消除锯齿,但是我对qml不熟练啊,(┬_┬)


 

 

这里摸索出来一个间的界面,就是在aml加一个定时器,来改变角度

 

上源代码

 

import QtQuick 2.7
import QtQuick.Window 2.2

Window {
    id:root
    visible: true
    width: 1920
    height: 720
    title: qsTr("Car Play")
    color: "#161616"
    property int pointer_angle: -135
    property bool timeChangedFlag: true
    function timeChanged()
    {
        if(timeChangedFlag)
        {
            if(pointer_angle<135)
            {
                pointer_angle++
                if(pointer_angle == 135)
                {
                    timeChangedFlag = false
                }

            }

        }
        if(!timeChangedFlag)
        {
            if(pointer_angle>-135)
            {
                pointer_angle--
                if(pointer_angle == -135)
                {
                    timeChangedFlag = true
                }
            }
        }

    }
    Timer{
        id:pointer_timer
        interval: 40
        running: true
        repeat: true
        onTriggered: root.timeChanged()
    }
    Item {
        id: background
        width: root.width
        height: root.height
        anchors.centerIn: parent
        Image {
            id: background_image
            source: "qrc:/source/beijing.bmp"
        }
        Image {
            id: pointer
            x:920
            y:90
            transform: Rotation{
                origin.x:40
                origin.y:267
                angle: pointer_angle
            }
            source: "qrc:/source/222.png"
        }

    }

}



 

 

posted @ 2017-01-03 15:44  DreamDog  阅读(560)  评论(0编辑  收藏  举报