无需多点触控设备的捏合模拟

发布于 2024-12-17 20:02:45 字数 115 浏览 5 评论 0原文

我正在 Windows 操作系统中开发一个 C++ 项目,我需要在没有多点触控设备的情况下模拟捏合等多点触控手势。类似于 Iphone,用户可以通过按住选项键来模拟捏合。 我想知道是否可以通过QT之类的框架来实现?

I am working on a c++ project in windows OS where I need to simulate multitouch gesture like Pinch without multitouch device.Similar to Iphone where user can simulate pinch by holding option key.
I want to know whether this can be achieved through Framework like QT ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

清风无影 2024-12-24 20:02:45

当然,只需在按下该修饰符时在 mouseMoveEvent 中缩放或旋转即可。

我认为生成实际的 QTouchEvents 不值得这么麻烦。

Sure, just zoom or rotate in the mouseMoveEvent, when that modifier is pressed.

I don't think generating actual QTouchEvents is worth the trouble.

寂寞笑我太脆弱 2024-12-24 20:02:45

据我了解,您想使用按钮导航图表时间线?如果是这样,这就是我在我的项目中应用的:

$("#bt1").click(function () {
var extremes = chart.xAxis[0].getExtremes();
var interval = extremes.max - extremes.min;
var enddate = new Date(extremes.max);
var begginingdate = new Date(extremes.min);
enddate = extremes.max - interval;
begginingdate = extremes.min - interval;
chart.xAxis[0].setExtremes(begginingdate, enddate);});

这会将您的图表滚动到您之前拥有的数据集,并且时间跨度与您当前的时间跨度相同。例如:如果您的图表上显示了从 4 月 29 日到 4 月 30 日的数据,这会将显示移动到 28 日到 29 日的时间跨度。如果您希望它继续前进,只需将其设置为 enddate =Extremes.max + Interval; begginingdate =Extremes.min+interval;

抱歉,如果这不是您要找的,但我真的明白这就是您要问的。

问候

From what i understood you want to navigate the chart timeline with buttons? If so this is what i applied in my project:

$("#bt1").click(function () {
var extremes = chart.xAxis[0].getExtremes();
var interval = extremes.max - extremes.min;
var enddate = new Date(extremes.max);
var begginingdate = new Date(extremes.min);
enddate = extremes.max - interval;
begginingdate = extremes.min - interval;
chart.xAxis[0].setExtremes(begginingdate, enddate);});

this will scroll your chart to the previous set of data you have on it, with the same timespan you currently have. Eg: if you have data from the 29th of april to the 30th of april displayed on your chart this will move the display to the 28th-29th timespan. If you wish it to move forward just make it enddate = extremes.max + interval; begginingdate = extremes.min + interval;

Sorry if this isn't what you were looking for but i truly understood this was what you were asking.

Regards

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文