目前我正在编写一个应用程序,它将液位测量数据显示到一些图表中。我总是在 x 轴上有日期/时间,在 y 轴上有数据。我为此使用 Qwt 并修改了 QwtPlotPicker 类以显示正确的时间标签。我通过推导和重新定义成员函数来做到这一点:
class myQwtPlotPicker : public QwtPlotPicker {
Q_OBJECT
public:
explicit myQwtPlotPicker( QWidget* canvas, bool DateScale = false );
explicit myQwtPlotPicker( int xAxis, int yAxis, QWidget* canvas, bool DateScale = false );
explicit myQwtPlotPicker( int xAxis, int yAxis, RubberBand rubberBand, DisplayMode trackerMode, QWidget* canvas, bool DateScale = false );
virtual ~myQwtPlotPicker() {};
protected:
virtual QwtText trackerTextF( const QPointF &position ) const {
... redefinition of the label text ...
}
};
如您所见,我还添加了一个新参数 DateScale,它可以打开或关闭日期标签。这很完美,但是有一个类 QwtPlotZommer 是从 QwtPlotPicker 派生的:
class QWT_EXPORT QwtPlotZoomer: public QwtPlotPicker { };
现在,问题是,如何让 QwtPlotZommer 类从 myQwtPlotPicker 派生而不是从 QwtPlotPicker 派生?或者我当然可以编辑 Qwt 源,但必须有正确的方法来做到这一点。
我希望有一个适当的方法来做到这一点。如果有人可以帮助我,我会很高兴。