【win32】高仿QQ截图

news/2024/12/23 8:01:00/

QQ截图大家都用过吧,从体验上来说是一个非常不错的软件,它只有200多kb,非常小巧,敢肯定应该是基于原生window api开发的,没用任何第三方的东西,接下来我想高度仿做一个这样的软件

技术难点分析:

1.截图中所使用的可调整矩形区域的控件,在mfc中有CRectTracker这样的控件,我们从vs安装目录下取得源码后,可以制作一个win32上所使用的控件。

2.在画图过程中根据WM_MOUSEMOVE处理消息时有一个大坑,鼠标移动所产生的点会被放入消息队列中,然而消息队列中的消息发送出去是一个时钟任务,每隔10ms处理一个消息,这就有问题了,在画图的时候鼠标移动速度慢看不出来什么,但是鼠标移动速度一旦很快的时候,你会发现画图的动作跟不上鼠标的动作,这来需要有一个专门的算法,来补上这些漏掉的点【代码中未给出】

3.使用双缓存技术,解决绘图过程中的闪烁问题,有统一的处理方法,这个很简单。

4.双缓冲也是有bug的,也是这个程序的一个缺陷,未解决,bug出现后,这个东西就不想在继续下去了,因为我真的解决不了这个问题,不知道什么地方出错了,导致在截图区域移动一段时候后,突然背景就没了,分析了好久也不知道是什么原因导致的,希望有了解的同学,帮忙给我点提示。。。


最终成品效果展示:



源代码下载:

http://download.csdn.net/detail/cc_want/9801125

github地址:

https://github.com/CCwant/SnapShot



http://www.ppmy.cn/news/594798.html

相关文章

WPF C#截图功能 仿qq截图

先上效果图 源码下载地址:http://download.csdn.net/detail/candyvoice/9788099 描述:启动程序,点击窗口button,开始截图,鼠标左键按下拖动,选中任意区域,拖动过程中,左上角实时显示选中区域大小,拖动结束,鼠标左键抬起,出现右下角保存、取消、ok三个button。右键点…

QQ截图

截图是最经常用的工具,QQ截图是我见过最好的截图工具,只是你必须打开QQ才可以使用,有时候没法上网,或者不想上QQ的时候,截图还是很麻烦。Windows自带的那个截图工具和QQ的截图工具相差甚远。所以想找一个QQ离线时候的替…

Qt仿QQ截图

在他的基础上添加了一些功能http://huangchunquanmaker.blog.163.com/blog/static/107408483201011157155489/ 1.保存截图文件 2.改变了一点点风格(类似QQ截图) 其中这是 截图的图片的保存 QString fileName QFileDialog::getSaveFileName(this,tr(&…

基于pyqt5实现QQ截图功能

目录 前言 实现 前言 最近闲来无事研究了下pyqt5的框架,实现了基于tesseract识图,想在tesseract识图功能中添加个屏幕识图的功能类似于QQ截图,然后将截图自动识字,。 先不多说看看效果图: 主界面图: 截…

不登陆QQ也能使用QQ截图工具

【如果您感觉这系列文章有用,还请帮我点个赞,收个藏,让更多的人看到这篇文章】 1、新版的QQ已经没有CameraDll.dll,所以要下载一个CameraDll.dll,它有一个导出函数CameraSubArea 下载链接:https://downlo…

使用qq截图并进行文字提取

QQ截图有着非常完善和强大的功能,基本上可以满足我们大部分需求。可以快捷进行提取文字、编辑、翻译等操作,跟着我来探索一下吧: 快捷键 录屏: ctrlalts  截图: ctrlalta 文字提取 先使用ctrlalta进行截图;然后点击下方编辑选…

C# 简单实现QQ截图功能

接上一篇写的截取电脑屏幕,我们在原来的基础上加一个选择区域的功能,实现自定义选择截图。 个人比较懒,上一篇的代码就不重新设计了,就简单改一下呈现方式。 不得不吐槽一下,在windows10系统上设置了放大比例的话&…

如何使用QQ快速截屏

如何使用QQ快速截屏 1.首先打开QQ,找到设置,点击热键,在捕捉屏幕中设置自己的快捷键。 2.按住CtrlZ(这是我自己设置的)用鼠标选取自己所要截图的部分,可以对所选区域进行编辑。 3.最后将图片保存。 按住C…