【问题标题】:scrolless but draggable widget无滚动但可拖动的小部件
【发布时间】:2014-10-30 17:05:21
【问题描述】:

我愿意创建一个使用 OpenGL 绘制图形的小部件,它没有滚动条,但您可以拖动它来显示图形的其余部分。这张图片或多或少地描述了我在说什么:

如您所见,有一个箭头指向用户可以拖动的方向,并显示图形的其余部分。

我可以从哪里开始?有没有类似的教程或示例?

【问题讨论】:

  • 我想我会使用一个沿图形移动的 OpenGL 相机(移动图形的变换矩阵)并完全绕过 Qt 滚动功能。
  • 它可能有效,我会尝试一下。谢谢@Uroc327

标签: c++ qt qtwidgets


【解决方案1】:

Qwt 库中已经存在此类小部件,基于 Qt 的附加工具。

Qwt:http://qwt.sourceforge.net/index.html

QwtPlotPanner:http://qwt.sourceforge.net/class_qwt_plot_panner.html

使用示例:

QwtPlotPanner *d_panner = new QwtPlotPanner( ui->qwtPlot->canvas() );
d_panner->setMouseButton( Qt::LeftButton );

其中ui->qwtPlotQwtPlot - 用于绘图的小部件。

【讨论】:

  • 太棒了,我将检查示例以及如何更好地实现这一点。
  • @MrAlmighty 注意:Qwt 是一个非常强大的工具,它不仅仅是绘图,它是一个第三方库,但它与 Qt 配合得很好
  • 真正的建议是学习并尝试实现我自己的,比Qwt的绘图还要简单。这完全是对井的改造,但我需要了解它是如何工作的。
猜你喜欢
  • 1970-01-01
  • 2010-12-30
  • 1970-01-01
  • 2014-02-20
  • 2015-01-21
  • 2023-03-16
  • 1970-01-01
  • 2019-05-23
  • 1970-01-01
相关资源
最近更新 更多