• 4390阅读
  • 4回复

[提问]请教关于windows系统下截屏 [复制链接]

上一主题 下一主题
离线zff518
 
只看楼主 正序阅读 楼主  发表于: 2011-10-25
正在做一个截屏工具,但是有很多问题没有想清楚,比较关键的问题是怎么在windows系统全局拉框选择区域

今天发现了这个帖子http://www.qtcn.org/bbs/read-htm-tid-45532.html

大概有了一点思路,就是做一个widget覆盖桌面,然后在这个widget上选择截屏区域

这里的问题是:

1. 怎么阻止windows切换应用程序?
2. 怎么获取多显示器的截图,并且当各显示器的分辨率不一样的时候?在这种情况下,怎么才能做一个widget覆盖所有的显示器呢?

因为有很多软件已经很完美的实现了我需要的功能,比如greenshot,但是我不知道他们是怎么做的,没有思路。

谢谢
离线zff518
只看该作者 4楼 发表于: 2011-10-25
但是怎么才能冻结屏幕呢?

就是在拉框选择的时候不激活别的程序
离线wxj120bw

只看该作者 3楼 发表于: 2011-10-25
回 2楼(zff518) 的帖子
其实结合mousePressEvent,mouseMoveEvent,mouseReleaseEvent函数得到左上角和右下角的点 再通过你找到的函数就可以拉框截图了
离线zff518
只看该作者 2楼 发表于: 2011-10-25
多显示器问题解决了,这里有答案
http://atkit.com/dev/qt-dev/grabbing-multi-monitor-screenshot-qt/

现在就是想搞明白怎么在桌面上拉框选择区域,还不知道怎么弄呢
离线zff518
只看该作者 1楼 发表于: 2011-10-25
可能我描述的不是很清楚

我现在碰到的问题,一个是多显示器截图
用这个
QPixmap::grabWindow(QApplication::desktop()->winId());
只能获得主屏的截图,请问怎么或者所有显示器截图呢?尤其是各显示器分辨率不一样的时候

第二个是怎么在桌面拉框选择,这个问题很头疼
快速回复
限100 字节
 
上一个 下一个