因为我这块板子的屏幕无法触摸,所以只能使用鼠标做一些简单的控制(各位都应该知道俺硬件很水。。屏幕还是wytyfred和ou123的帮忙下弄出来的)。触摸屏要是能用的话增加上我之前设想的功能,效果绝对杠杠的。所以只给作品加了一个缩放的功能。
主要使用了qwt中的zoomer类
这东西用起来很简单的,下面上代码:
- class MyZoomer: public QwtPlotZoomer
- {
- public:
- MyZoomer( QWidget *canvas ):
- QwtPlotZoomer( canvas )
- {
- setTrackerMode( AlwaysOn );
- }
-
- virtual QwtText trackerTextF( const QPointF &pos ) const
- {
- QColor bg( Qt::white );
- bg.setAlpha( 200 );
-
- QwtText text = QwtPlotZoomer::trackerTextF( pos );
- text.setBackgroundBrush( QBrush( bg ) );
- return text;
- }
- };
这个是类
下面这个是使用方法:
- QwtPlotZoomer* zoomer = new MyZoomer( canvas );
- zoomer->setMousePattern( QwtEventPattern::MouseSelect2,
- Qt::RightButton, Qt::ControlModifier );
- zoomer->setMousePattern( QwtEventPattern::MouseSelect3,
- Qt::RightButton );
主要就是实例化和设置鼠标对应的操作。具体的大家可以去看qwt中的例子Tvplot。只要耐下心来看就可以看懂的。源码是最好的文档.
本帖最后由 airqj 于 2014-7-20 22:31 编辑