QT自定义之滑动开关的实现方法-创新互联

这篇文章主要介绍了QT自定义之滑动开关的实现方法,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。

10年积累的成都网站设计、成都网站建设经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先做网站设计后付款的网站建设流程,更有越秀免费网站建设让你可以放心的选择与我们合作。

写了一个简单的滑动开关, 不多说,上图:

QT自定义之滑动开关的实现方法

代码如下:

#ifndef SLIDERBUTTON_H
#define SLIDERBUTTON_H
 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
 
namespace Ui {
class SliderButton;
}
 
 
class SliderButton : public QWidget
{
 Q_OBJECT
 
public:
 explicit SliderButton(QWidget *parent = nullptr);
 ~SliderButton();
 
 void set_button_size(const int &w, const int &h);
 void set_button_color(const QColor & , const QColor & ,const QColor & );
 
 signals:
 void signal_button_on();
 void signal_button_off();
 
protected:
 virtual void mousePressEvent(QMouseEvent *event);
 virtual void paintEvent(QPaintEvent *event);
 
public slots:
 void slot_update();
 
private:
 bool m_button_status;
 
 int m_circle_width;
 int m_button_pos;
 int m_move_distance;
 
 QColor m_backcolor_on;
 QColor m_backcolor_off;
 QColor m_circle_color;
 
 QTimer *m_timer;
};
 
#endif // SLIDERBUTTON_H

本文标题:QT自定义之滑动开关的实现方法-创新互联
网页网址:http://hbruida.cn/article/dgdges.html