0
点赞
收藏
分享

微信扫一扫

Qt之实现文字滚动效果

诗与泡面 2023-12-10 阅读 48

一.效果

二.实现

roller.h

#ifndef ROLLER_H
#define ROLLER_H

#include <QWidget>
#include <QPaintEvent>
#include <QShowEvent>
#include <QHideEvent>
#include <QTimer>

class Roller : public QWidget
{
public:
explicit Roller(QWidget *parent = nullptr);

void setText(const QString

protected:
QSize sizeHint() const override;
void paintEvent(QPaintEvent* event) override;
void showEvent(QShowEvent* event) override;
void hideEvent(QHideEvent* event) override;

private:
QString m_text;
int m_offset;
QTimer m_timer;
};

#endif // ROLLER_H

roller.cpp

#include "roller.h"

#include <QPainter>
#include <QFontMetrics>

Roller::Roller(QW
举报

相关推荐

0 条评论