qt中实现QDoubleSlider
来源:互联网 发布:数据库审计产品标书 编辑:程序博客网 时间:2024/05/18 13:31
qDoubleSlider.h
#ifndef Q_DOUBLE_SLIDER_H#define Q_DOUBLE_SLIDER_H#include <QtGui/QtGui>#include <QSlider>class QDoubleSlider : public QSlider{ Q_OBJECTpublic: QDoubleSlider(QWidget* pParent = NULL); void setRange(double Min, double Max); void setMinimum(double Min); double minimum() const; void setMaximum(double Max); double maximum() const; double value() const; public slots: void setValue(int value); void setValue(double Value, bool BlockSignals = false); private slots:signals : void valueChanged(double Value); void rangeChanged(double Min, double Max);private: doublem_Multiplier;};#endif
qDoubleSlider.cpp
#include "qDoubleSlider.h"QDoubleSlider::QDoubleSlider(QWidget* pParent /*= NULL*/) :QSlider(pParent),m_Multiplier(10000.0){ connect(this, SIGNAL(valueChanged(int)), this, SLOT(setValue(int))); setSingleStep(1); setOrientation(Qt::Horizontal); setFocusPolicy(Qt::NoFocus);}void QDoubleSlider::setValue(int Value){ emit valueChanged((double)Value / m_Multiplier);}void QDoubleSlider::setValue(double Value, bool BlockSignals){ QSlider::blockSignals(BlockSignals); QSlider::setValue(Value * m_Multiplier); if (!BlockSignals) emit valueChanged(Value); QSlider::blockSignals(false);}void QDoubleSlider::setRange(double Min, double Max){ QSlider::setRange(Min * m_Multiplier, Max * m_Multiplier); emit rangeChanged(Min, Max);}void QDoubleSlider::setMinimum(double Min){ QSlider::setMinimum(Min * m_Multiplier); emit rangeChanged(minimum(), maximum());}double QDoubleSlider::minimum() const{ return QSlider::minimum() / m_Multiplier;}void QDoubleSlider::setMaximum(double Max){ QSlider::setMaximum(Max * m_Multiplier); emit rangeChanged(minimum(), maximum());}double QDoubleSlider::maximum() const{ return QSlider::maximum() / m_Multiplier;}double QDoubleSlider::value() const{ int Value = QSlider::value(); return (double)Value / m_Multiplier;}
0 0
- qt中实现QDoubleSlider
- Qt中实现拖放
- QT中实现托盘
- QT中实现定时器
- Qt中实现启动
- QT中实现上下文菜单
- QT中实现上下文菜单
- QT中实现上下文菜单
- QT 中实现图片渐显
- Qt 中 实现窗体拖动
- Qt中实现启动画面
- Qt中实现条件编译
- QT中实现开机动画
- Qt'中foreach的实现
- Qt中实现启动画面
- QT 中实现HMAC-SHA1
- Qt 中 实现gif动画的播放
- 在Qt中实现一个对话框
- C++应用程序在Windows下的编译、链接(一)概述 .
- 145_leetcode_Simplify Path
- MS Project 2007的使用
- 游戏运营笔记二 产品的定位
- PHP PDO bindParam 误区
- qt中实现QDoubleSlider
- 移动端重构系列2——新建空白页面
- POJ 2386 Lake Counting (dfs)
- 北京人文大学清华IT成才典礼
- 连接两个字面值常量并输出
- 再谈Jquery Ajax方法传递到action
- Java 8 的日期时间新用法
- 小白学jquery Mobile《构建跨平台APP:jQuery Mobile移动应用实战》连载四(场景切换)
- hdu 4869 组合数