如何在qt Creater中使用Spritesheet动画

How to use Spritesheet Animation in qt Creater?

本文关键字:Spritesheet 动画 Creater qt      更新时间:2023-10-16

我是qt-create的新手,我想使用SpriteSheet Animation

我使用了本文中的以下代码点击这里

我收到以下错误请点击此处查看图像

    class Sprite
{
public:
    Sprite();
    void draw( QPainter* painter);
    QPoint pos() const;
    void nextFrame();
private:
    QPixmap* mSpriteImage;
    int mCurrentFrame;
    QPoint mPos;
    int mXDir;
};
Sprite::Sprite():mPos(0,0),mCurrentFrame(0)
{
    mSpriteImage = new QPixmap(":dragon.png");
}
void Sprite::draw( QPainter* painter)
{
    painter->drawPixmap ( mPos.x(),mPos.y(), *mSpriteImage,
                                   mCurrentFrame, 0, 100,100 );
}
QPoint Sprite::pos() const
{
    return mPos;
}
void Sprite::nextFrame()
{
    //following variable keeps track which
    //frame to show from sprite sheet
    mCurrentFrame += 100;
    if (mCurrentFrame >= 500 )
        mCurrentFrame = 0;
    mPos.setX( mPos.x() + 10 );
}

如果在文件中包含QPixmap,则应该很好