[经验] BBB频谱仪经验分享之波形的缩放

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

回复评论

暂无评论,赶紧抢沙发吧
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复