Skip to content

Instantly share code, notes, and snippets.

@haraki
Last active April 23, 2018 01:47
Show Gist options
  • Save haraki/ec3712aa845d3578287bebf4d74e9a0a to your computer and use it in GitHub Desktop.
Save haraki/ec3712aa845d3578287bebf4d74e9a0a to your computer and use it in GitHub Desktop.
ItemWidget
ImageViewer::ItemWidget::ItemWidget(QByteArray& buffer) :
m_buffer(Q_NULLPTR),
m_movie(Q_NULLPTR)
{
qDebug() << "ImageViewer::ItemWidget::ItemWidget()";
m_buffer = new QBuffer(&buffer);
Q_ASSERT(m_buffer);
m_movie = new QMovie(m_buffer);
Q_ASSERT(m_movie);
setMovie(m_movie);
m_movie->start();
setFixedSize(m_movie->frameRect().size()); // QMovie::start() の後でないとサイズは取得できない
setAlignment(Qt::AlignCenter);
setSizePolicy(QSizePolicy::Ignored, QSizePolicy::Ignored);
setAttribute(Qt::WA_TranslucentBackground, true);
}
class ItemWidget : public QLabel
{
public:
ItemWidget(QByteArray& buffer);
~ItemWidget();
private:
QBuffer* m_buffer;
QMovie* m_movie;
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment