Qt之QWidget 自定义倒计时器
2023-12-22 00:05:21
简述
Qt提供的带进度显示的只有一个QProgresBar,这个控件要么是加载进度从0~100%,要么是持续的两边滚动;而我想要是倒计时的效果,所以QProgresBar并不满足要求,而Qt重写控件相对于MFC来说简直是轻而易举,所以就整了两种不同的倒计时控件;
效果
代码
QPushButton的绘制部分:
void MProgressButton::paintEvent(QPaintEvent *event)
{
QPushButton::paintEvent(event);
if (m_iTotalMs > 0) {
QPen pen;
pen.setWidth(6);
pen.setColor(Qt::red);
QPainter painter(this);
painter.setPen(pen);
painter.setRenderHint(QPainter::Antialiasing);
int w = width(), h = height();
int total = (w + h) * 2;
float percent = (m_iRemainMs * 1.0f / m_iTotalMs);
float remain = percent * total;
QLineF line;
if (remain >
文章来源:https://blog.csdn.net/Ilson_/article/details/135141871
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!