QWT API (中文) 7.0.1
Qt绘图库 - 中文API文档
载入中...
搜索中...
未找到
qwt_abstract_slider.h
1/******************************************************************************
2 * Qwt Widget Library
3 * Copyright (C) 1997 Josef Wilgen
4 * Copyright (C) 2002 Uwe Rathmann
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the Qwt License, Version 1.0
8 *
9 * Modified by ChenZongYan in 2024 <czy.t@163.com>
10 * Summary of major modifications (see ChangeLog.md for full history):
11 * 1. CMake build system & C++11 throughout.
12 * 2. Core panner/ zoomer refactored:
13 * - QwtPanner → QwtCachePanner (pixmap-cache version)
14 * - New real-time QwtPlotPanner derived from QwtPicker.
15 * 3. Zoomer supports multi-axis.
16 * 4. Parasite-plot framework:
17 * - QwtFigure, QwtPlotParasiteLayout, QwtPlotTransparentCanvas,
18 * - QwtPlotScaleEventDispatcher, built-in pan/zoom on axis.
19 * 5. New picker: QwtPlotSeriesDataPicker (works with date axis).
20 * 6. Raster & color-map extensions:
21 * - QwtGridRasterData (2-D table + interpolation)
22 * - QwtLinearColorMap::stopColors(), stopPos() API rename.
23 * 7. Bar-chart: expose pen/brush control.
24 * 8. Amalgamated build: single QwtPlot.h / QwtPlot.cpp pair in src-amalgamate.
25 *****************************************************************************/
26
27#ifndef QWT_ABSTRACT_SLIDER_H
28#define QWT_ABSTRACT_SLIDER_H
29
30#include "qwt_global.h"
31#include "qwt_abstract_scale.h"
32
56class QWT_EXPORT QwtAbstractSlider : public QwtAbstractScale
57{
58 Q_OBJECT
59
60 Q_PROPERTY( double value READ value WRITE setValue NOTIFY valueChanged USER true )
61
62 Q_PROPERTY( uint totalSteps READ totalSteps WRITE setTotalSteps )
63 Q_PROPERTY( uint singleSteps READ singleSteps WRITE setSingleSteps )
64 Q_PROPERTY( uint pageSteps READ pageSteps WRITE setPageSteps )
65 Q_PROPERTY( bool stepAlignment READ stepAlignment WRITE setStepAlignment )
66
67 Q_PROPERTY( bool readOnly READ isReadOnly WRITE setReadOnly )
68 Q_PROPERTY( bool tracking READ isTracking WRITE setTracking )
69 Q_PROPERTY( bool wrapping READ wrapping WRITE setWrapping )
70
71 Q_PROPERTY( bool invertedControls READ invertedControls WRITE setInvertedControls )
72
73 public:
75 explicit QwtAbstractSlider( QWidget* parent = nullptr );
76
78 virtual ~QwtAbstractSlider();
79
81 void setValid( bool );
82
84 bool isValid() const;
85
87 double value() const;
88
90 void setWrapping( bool );
91
93 bool wrapping() const;
94
96 void setTotalSteps( uint );
97
99 uint totalSteps() const;
100
102 void setSingleSteps( uint );
103
105 uint singleSteps() const;
106
108 void setPageSteps( uint );
109
111 uint pageSteps() const;
112
114 void setStepAlignment( bool );
115
117 bool stepAlignment() const;
118
120 void setTracking( bool );
121
123 bool isTracking() const;
124
126 void setReadOnly( bool );
127
129 bool isReadOnly() const;
130
132 void setInvertedControls( bool );
133
135 bool invertedControls() const;
136
137 public Q_SLOTS:
139 void setValue( double value );
140
141 Q_SIGNALS:
142
158 void valueChanged( double value );
159
169
179
192 void sliderMoved( double value );
193
194 protected:
196 virtual void mousePressEvent( QMouseEvent* ) override;
197
199 virtual void mouseReleaseEvent( QMouseEvent* ) override;
200
202 virtual void mouseMoveEvent( QMouseEvent* ) override;
203
205 virtual void keyPressEvent( QKeyEvent* ) override;
206
208 virtual void wheelEvent( QWheelEvent* ) override;
209
224 virtual bool isScrollPosition( const QPoint& pos ) const = 0;
225
240 virtual double scrolledTo( const QPoint& pos ) const = 0;
241
243 void incrementValue( int stepCount );
244
246 virtual void scaleChange() override;
247
248 protected:
250 virtual void sliderChange();
251
253 double incrementedValue(
254 double value, int stepCount ) const;
255
256 private:
257 double alignedValue( double ) const;
258 double boundedValue( double ) const;
259
260 class PrivateData;
261 PrivateData* m_data;
262};
263
264#endif
具有刻度的控件的抽象基类
Definition qwt_abstract_scale.h:62
virtual void scaleChange()
Notify about scale changes (English only)
Definition qwt_abstract_scale.cpp:620
带刻度的滑块控件的抽象基类
Definition qwt_abstract_slider.h:57
void valueChanged(double value)
通知值变化
void sliderReleased()
当用户释放滑块的可移动部分时发出的信号
void sliderMoved(double value)
当用户用鼠标移动滑块时发出的信号
virtual bool isScrollPosition(const QPoint &pos) const =0
确定当用户按下鼠标按钮时该做什么
virtual double scrolledTo(const QPoint &pos) const =0
确定滑块可移动部分新位置的值
void sliderPressed()
当用户按下滑块的可移动部分时发出的信号