一、简介
Qt下利用定时器实现指针指示百分比的钟摆的动态显示效果,可以适用于显示百分比或进度条的进度或时间的刻度值(在圆形进度条上的一种改进)。效果如下:
二、详解
1、代码
(1)DashboardDisplay.h
#ifndef DASHBOARDPROCESS_H
#define DASHBOARDPROCESS_H
#include <QtCore>
#include <QtGui>
class DashboardProcess : public QWidget
{
Q_OBJECT
public:
DashboardProcess(QWidget *parent = 0);
~DashboardProcess();
void setUsedValue(int value);
void setSize(int width, int height);
protected:
void paintEvent(QPaintEvent *event);
void resizeEvent (QResizeEvent * event);
void mousePressEvent(QMouseEvent *event);
void mouseMoveEvent(QMouseEvent *event);
void mouseReleaseEvent(QMouseEvent *event);
void showEvent(QShowEvent *event);
void hideEvent(QHideEvent *event);
private slots:
void slotUpdateTimer();
void slotGapTimer();
private:
QPoint beginDrag;
bool bPressFlag;
int typeDisplay;
QPixmap pointPix;
int userdVaule;
int currentValue;
QLabel *currentValueLabel;
QTimer *updateTimer;
QTimer *gapTimer;
int gap;
int gapCount;
};
#endif // WIDGET_H
(2)DashboardDisplay.cpp
#