写一个截图APP![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/16362b7560204b20875cbcbd7a69ccdb.png#pic_center)
由于不会贴视频,截几张实测图片放这里![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/4c2e3355da2a4823acfa98509e5bf7d2.png#pic_center)
分析,参考QQ截图
1.按下ctrl+shift+S开启截图功能
2.鼠标移动的时候,下面有个放大镜,一个十字,可以移动,显示放大后的区域
命名为放大镜窗口,magnifyWindow
鼠标移动,自动锁定当前最前端窗口,绘制出方框
在放大镜下显示锁定窗口大小,wide*height
显示当前鼠标所在位置RGB
添加一个快捷键C,可以复制当前RGB
鼠标右键,开启自由截图功能
3.自由截图,只要右键不释放,就随着右键拖拽画线,鼠标弹起,是终点,起点到终点组成的多边形,就是截图区域QPainter的drawPloygon实现
自由截图的时候关闭magnifyWindow
鼠标弹起,截图区域正常显示,底部显示工具栏,左上角显示窗口size,宽X高
4.正常截图
鼠标左键按下,随着鼠标拖拽,出现一个矩形框,鼠标按下的点是起点,当前点是终点,组成矩形框,起点是固定的,终点可以在前在后在上,在下
矩形框左上角显示窗口大小,宽X高
5.开启截图时候整个屏幕变成灰色的,就相当于在整个图片上加一个mask
截图功能完成,就相当于把截图区域显示在图片上
6.底部工具栏
- 矩形工具
- 椭圆工具
- 箭头工具
- 画图工具
- 马赛克工具
- 选择好画笔的粗细后,可以在截图区域画线,然后画线的地方变成马赛克,由一个一个小方块组成,透明度调节应该就是把马赛克小方块调大调小,马赛克的颜色应该是方块左上角位置的原来相应位置的颜色
- 序号笔工具
- 选择好颜色后,在截图区域点一下,出现一个序号,序号按顺序往后加
- 撤销编辑
- 返回上一步操作
- 长截图
- 看不懂,应该是把图片缩放了
- 翻译
- 屏幕识图
- 显示正在识别,过几秒弹出一个ui,左侧是原截图区域,右侧是翻译出来的文字
- 钉在桌面上
- 整个屏幕的mask窗口关闭,只保留当前截图区域窗口,然后可拖拽
- 屏幕录制
- 固定当前框,边框变红色,点开始录制,倒计时3,2,1,开启录制功能
- 保存
- 打开文件资源管理器,操作图片保存
- 发送到手机
- 把截图通过QQ发送到手机
- 收藏
- 弹出一个ui 恭喜收藏成功
- 退出截图
- 所有窗口关闭
- 完成截图
- 所有窗口关闭 所截图片复制到剪贴板
7.工具栏矩形框的位置,右边框与截图区域右边框相同,如果左边框在屏幕最左侧外面,则左边框为屏幕最左侧
上边框为截图区域下边框+space,如果下边框超出屏幕底部,则下边框为截图区域上边框+space,
space大概为2或者3
8.这些工具鼠标移上去会显示按钮文字 button.setToolTip
9.点击工具栏按钮,下方会显示相应小工具栏,位置也参考工具栏位置