#include "CustomSlider.h" #include CustomSlider::CustomSlider(QWidget *parent, Qt::WindowFlags f) :QSlider(parent) { Q_UNUSED(f); } CustomSlider::~CustomSlider() { } void CustomSlider::mousePressEvent(QMouseEvent *event) { if(event->button() != Qt::LeftButton) { QSlider::mousePressEvent(event); return; } QSlider::mousePressEvent(event); double pos = event->pos().x() /(double)width(); // int nMax = maximum(); // int nMin = minimum(); int nPos = ((maximum() - minimum() + 1) * pos) + minimum(); QSlider::setValue(nPos); emit sigLeftMouseClicked(nPos); } void CustomSlider::mouseReleaseEvent(QMouseEvent *event) { if(event->button() != Qt::LeftButton) { QSlider::mousePressEvent(event); return; } QSlider::mouseReleaseEvent(event); emit sigLeftMouseReleased(); }