用易语言的画板,做截图,其关键解决:画板正常情况下画的矩形,不是透明的。
    截图肯定是华哥矩形透明框,里面的内容截取。
    在不用自绘的清空下,用 画板1.清除(, , , )解决。
    将其加入时钟事件中:
    image.png
    截图程序:

    1. 打开易语言创建一个新的窗口程序,将窗口边框设置为无边框,总在最前设为真。

    易宝典 007  画板做截图 - 图2
    易宝典 007  画板做截图 - 图3

    1. 在窗口内添加一个画板组件,一个时钟组件,一个分组框。

    在分组框里添加两个按钮,一个命名为截图,一个取消。
    将画板的可视属性设为假。
    易宝典 007  画板做截图 - 图4
    易宝典 007  画板做截图 - 图5
    易宝典 007  画板做截图 - 图6
    易宝典 007  画板做截图 - 图7

    1. 双击取消按钮开始写代码,取消按钮里就一个销毁就可以了
    2. 然后创建一个程序集变量,类型为:矩形数据。

    截图完整代码如下:

    1. .版本 2
    2. .支持库 eAPI
    3. .支持库 shell
    4. .支持库 spec
    5. .程序集 窗口程序集_启动窗口
    6. .程序集变量 截图区域, 矩形数据
    7. .子程序 _按钮2_被单击
    8. 销毁 () ' 销毁
    9. .子程序 界面初始化
    10. _启动窗口.左边 = 0
    11. _启动窗口.顶边 = 0
    12. _启动窗口.高度 = 取屏幕高度 ()
    13. _启动窗口.宽度 = 取屏幕宽度 ()
    14. 画板1.左边 = 0
    15. 画板1.顶边 = 0
    16. 画板1.高度 = _启动窗口.高度
    17. 画板1.宽度 = _启动窗口.宽度
    18. .子程序 截图
    19. 画板1.底图 = 快照 (, , )
    20. .子程序 _画板1_鼠标左键被按下, 逻辑型
    21. .参数 横向位置, 整数型
    22. .参数 纵向位置, 整数型
    23. .参数 功能键状态, 整数型
    24. 画板1.底图 = 快照 (, , )
    25. 截图区域.左边 = 取鼠标水平位置 ()
    26. 截图区域.顶边 = 取鼠标垂直位置 ()
    27. 时钟1.时钟周期 = 50
    28. .子程序 _时钟1_周期事件
    29. 画板1.画矩形 (截图区域.左边, 截图区域.顶边, 取鼠标水平位置 (), 取鼠标垂直位置 ())
    30. 画板1.清除 (, , , )
    31. .子程序 _画板1_鼠标左键被放开, 逻辑型
    32. .参数 横向位置, 整数型
    33. .参数 纵向位置, 整数型
    34. .参数 功能键状态, 整数型
    35. .局部变量 临时数据, 整数型
    36. 截图区域.右边 = 取鼠标水平位置 ()
    37. 截图区域.底边 = 取鼠标垂直位置 ()
    38. 时钟1.时钟周期 = 0
    39. .判断开始 (截图区域.左边 > 截图区域.右边)
    40. 临时数据 = 截图区域.左边
    41. 截图区域.左边 = 截图区域.右边
    42. 截图区域.右边 = 临时数据
    43. .默认
    44. .判断结束
    45. .判断开始 (截图区域.顶边 > 截图区域.顶边)
    46. 临时数据 = 截图区域.顶边
    47. 截图区域.顶边 = 截图区域.底边
    48. 截图区域.底边 = 临时数据
    49. .默认
    50. .判断结束
    51. 截取屏幕区域 (截图区域, #接口常量.到文件, 取特定目录 (#系统桌面) + “截图.jpg”)
    52. ' 截取屏幕区域 (, #接口常量.到文件, 取特定目录 (#系统桌面) + “截图.jpg”)
    53. _启动窗口.可视
    54. 信息框 (“已保存到桌面”, 0, , )
    55. ' 图片框_发票识别.图片 = 截取屏幕区域 (截图区域, #接口常量.到字节集, )
    56. 销毁 ()
    57. .子程序 _按钮1_被单击
    58. 分组框1.可视 = 假
    59. _启动窗口.可视 = 假
    60. 延迟 (100)
    61. 截图 ()
    62. 界面初始化 ()
    63. _启动窗口.可视 = 真
    64. 画板1.可视 = 真