#qt #animation #qml #sprite
#qt #Анимация #qml #спрайт
Вопрос:
Я пытаюсь написать небольшую программу, которая должна подключаться к Интернету. При этом приложение должно показывать анимацию, которую я создал во Flash Professional и экспортировал в виде листа спрайтов. Я использую тип AnimatedSprite в QML:
import QtQuick 2.2
import QtQuick.Controls 1.1
ApplicationWindow {
visible: true
width: 640
height: 480
flags: Qt.FramelessWindowHint
| Qt.Window
color:"#00000000"
title:"Presenter Remote"
Rectangle{
color:"steelblue"
height:parent.height
width:parent.width
radius: 10
}
Image {
anchors.right: parent.right
anchors.top: parent.top
anchors.topMargin: -20
scale: 0.5
source: "close.png"
MouseArea {
width:parent.width
height:parent.height
onClicked: Qt.quit()
}
}
AnimatedSprite{
source: "Animation_Cloud.png"
anchors.centerIn: parent
frameHeight:313
frameWidth:232
running: true
frameCount:60
frameDuration: 20
width:232
height:313
}
}
Когда я компилирую и запускаю, я получаю анимацию спрайта, но при этом он перемещается справа налево.
Как я могу установить спрайт неподвижно и просто перемещать «половинные стрелки»?
Ответ №1:
Проблема, похоже, в вашем листе спрайтов; удалите лишнее пространство с правой стороны файла .png.
Комментарии:
1. Он все еще колеблется, но стал менее сильным. Я постараюсь оптимизировать ее в Photoshop.