QwtPicker:通过箭头键禁用光标移动
Posted
技术标签:
【中文标题】QwtPicker:通过箭头键禁用光标移动【英文标题】:QwtPicker: disable movement of cursor via arrow keys 【发布时间】:2017-07-04 13:29:57 【问题描述】:根据 QwtPicker 的Qwt documentation(它是我正在使用的类 QwtPlotZoomer 的超类),可以使用箭头键移动光标:
The cursor can be moved using the arrow keys
但是,我不想禁用它,因为箭头键在我的应用程序中有不同的用途。
这可以通过 API 实现吗?否则我需要继承我的 QwtPlotZoomer..
【问题讨论】:
【参考方案1】:好的,刚刚覆盖了QwtPicker的相关函数,这工作正常。
class MyQwtPlotZoomer : public QwtPlotZoomer
public:
MyQwtPlotZoomer(int xAxis, int yAxis, QwtPlotCanvas* canvas, bool doReplot = true) : QwtPlotZoomer(xAxis, yAxis, canvas, doReplot)
virtual ~MyQwtPlotZoomer()
protected:
virtual void widgetKeyPressEvent(QKeyEvent* ke)
if ( !isActive() )
if ( keyMatch( KeyUndo, ke ) )
zoom( -1 );
else if ( keyMatch( KeyRedo, ke ) )
zoom( +1 );
else if ( keyMatch( KeyHome, ke ) )
zoom( 0 );
virtual void widgetKeyReleaseEvent(QKeyEvent*)
;
【讨论】:
以上是关于QwtPicker:通过箭头键禁用光标移动的主要内容,如果未能解决你的问题,请参考以下文章