成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

利用Python實(shí)現(xiàn)一個(gè)簡易的截圖工具

89542767 / 595人閱讀

  小編寫這篇文章的一個(gè)主要目的,主要是利用Python去制作截圖工具,當(dāng)然,這個(gè)截圖工具是比較的簡易的,那么,具體的一個(gè)制作步驟是什么呢?下面就給大家詳細(xì)解答下。


  這是工作期間同事想要個(gè)截完圖之后可以顯示并且永遠(yuǎn)前置的截圖小工具(即不會被其他程序覆蓋)直接上代碼:


  ##-*-coding:utf-8-*-
  import tkinter as tk
  import pyautogui
  import tkinter
  from PIL import ImageTk
  from PIL import Image
  root=tk.Tk()
  root.wm_attributes('-topmost',1)
  root.overrideredirect(True)#隱藏窗口的標(biāo)題欄
  #root.attributes("-alpha",0.3)#窗口透明度70%
  root.attributes("-alpha",0.4)#窗口透明度60%
  #root.geometry("300x200+10+10")#設(shè)置窗口大小與位置
  root.geometry("{0}x{1}+0+0".format(root.winfo_screenwidth(),root.winfo_screenheight()))
  root.configure(bg="blue")
  #當(dāng)工具條
  canvas=tk.Canvas(root)
  canvas.configure(width=300)
  canvas.configure(height=100)
  canvas.configure(bg="yellow")
  canvas.configure(highlightthickness=0)#高亮厚度
  canvas.place(x=(root.winfo_screenwidth()-500),y=(root.winfo_screenheight()-300))
  canvas.create_text(150,50,font='Arial-20 bold',text='ESC退出,假裝工具條')
  #再創(chuàng)建1個(gè)Canvas用于圈選
  cv=tk.Canvas(root)
  x,y=0,0
  xstart,ystart=0,0
  def move(event):
  global x,y,xstart,ystart
  new_x=(event.x-x)+canvas.winfo_x()
  new_y=(event.y-y)+canvas.winfo_y()
  s="300x200+"+str(new_x)+"+"+str(new_y)
  canvas.place(x=new_x-xstart,y=new_y-ystart)
  print("s=",s)
  print(root.winfo_x(),root.winfo_y())
  print(event.x,event.y)
  #鼠標(biāo)左鍵按下
  def button_1(event):
  global x,y,xstart,ystart
  x,y=event.x,event.y
  xstart,ystart=event.x,event.y
  print("event.x,event.y=",event.x,event.y)
  xstart,ystart=event.x,event.y
  cv.configure(height=1)
  cv.configure(width=1)
  cv.place(x=event.x,y=event.y)
  #鼠標(biāo)左鍵按下并移動
  def b1_Motion(event):
  global x,y
  x,y=event.x,event.y
  print("event.x,event.y=",event.x,event.y)
  cv.configure(height=event.y-ystart)
  cv.configure(width=event.x-xstart)
  #鼠標(biāo)左鍵松開
  def buttonRelease_1(event):
  global x,y,xstart,ystart
  x,y=event.x,event.y
  print("event.x,event.y=",event.x,event.y)
  Pstart=[0,0]
  cv.place_forget()
  img=pyautogui.screenshot(region=[xstart,ystart,x-xstart,y-ystart])#x,y,w,h
  img.save('screenshot.png')
  #退出
  def sys_out(even):
  root.destroy()
  func()
  #綁定事件
  canvas.bind("<B1-Motion>",move)
  #綁定事件到Esc鍵,當(dāng)按下Esc鍵就會調(diào)用sys_out函數(shù),彈出對話框
  root.bind('<Escape>',sys_out)
  root.bind("<Button-1>",button_1)
  root.bind("<B1-Motion>",b1_Motion)
  root.bind("<ButtonRelease-1>",buttonRelease_1)
  img_png=None
  def func():
  root1=tk.Tk()
  root1.wm_attributes('-topmost',1)
  img_open=Image.open("screenshot.png")
  global img_png
  img_png=ImageTk.PhotoImage(img_open)
  label_img=tk.Label(root1,image=img_png)
  label_img.pack()
  root.mainloop()


  具體用法是運(yùn)行程序、選中區(qū)域(支持多次選定,以最后一次選定為主)、按esc完成截圖同時(shí)彈出永遠(yuǎn)前置的截圖照片窗體。


  我打包了發(fā)給同事同事說很好用,就是差個(gè)快捷鍵。


  其實(shí)也很簡單,只須打包成exe程序后右擊屬性中設(shè)置快捷鍵即可~


  綜上所述,這篇文章就給大家介紹到這里了,希望可以給大家?guī)硪欢◣椭?/p>

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/128424.html

相關(guān)文章

  • 微信公號DIY:MongoDB 簡易ORM & 公號記賬數(shù)據(jù)庫設(shè)計(jì)

    摘要:然后又介紹了基于的公號賬本應(yīng)用的數(shù)據(jù)庫設(shè)計(jì)。歡迎關(guān)注公號四月試用。 前兩篇 微信公號DIY 系列: 微信公號DIY:一小時(shí)搭建微信聊天機(jī)器人 微信公號DIY:訓(xùn)練聊天機(jī)器人&公號變身圖片上傳工具 介紹了如何使用搭建&訓(xùn)練聊天機(jī)器人以及讓公號支持圖片上傳到七牛,把公號變成一個(gè)七牛圖片上傳客戶端。這一篇將繼續(xù)開發(fā)公號,讓公號變成一個(gè)更加實(shí)用的工具賬本(理財(cái)從記賬開始)。 代碼: 項(xiàng)目代...

    Backache 評論0 收藏0
  • 微信公號DIY:MongoDB 簡易ORM & 公號記賬數(shù)據(jù)庫設(shè)計(jì)

    摘要:然后又介紹了基于的公號賬本應(yīng)用的數(shù)據(jù)庫設(shè)計(jì)。歡迎關(guān)注公號四月試用。 前兩篇 微信公號DIY 系列: 微信公號DIY:一小時(shí)搭建微信聊天機(jī)器人 微信公號DIY:訓(xùn)練聊天機(jī)器人&公號變身圖片上傳工具 介紹了如何使用搭建&訓(xùn)練聊天機(jī)器人以及讓公號支持圖片上傳到七牛,把公號變成一個(gè)七牛圖片上傳客戶端。這一篇將繼續(xù)開發(fā)公號,讓公號變成一個(gè)更加實(shí)用的工具賬本(理財(cái)從記賬開始)。 代碼: 項(xiàng)目代...

    DoINsiSt 評論0 收藏0
  • 端到端測試哪家強(qiáng)?不容錯(cuò)過Cypress

    摘要:閱讀原文目前測試工具有哪些項(xiàng)目不需要不需要端到端測試一般都需要一個(gè)容器,來運(yùn)行前端應(yīng)用。向快速,一致和可靠的無剝落測試問好。 閱讀原文 1. 目前E2E測試工具有哪些? 項(xiàng)目 Web Star puppeteer Chromium (~170Mb Mac, ~282Mb Linux, ~280Mb Win) 31906 nightmare Electron 15502 ...

    LancerComet 評論0 收藏0
  • Vuejs自己構(gòu)建工具

    摘要:然而,這些模板并不限制你自己對于使用的架構(gòu)組織和選擇類庫。目前可用的模板包括全功能的,包括熱加載,靜態(tài)檢測,單元測試一個(gè)簡易的,以便于快速開始。 最近, 尤大在和人對噴的時(shí)候,悄然放出了一個(gè)大招,于是為了追趕他的步伐,趕緊試驗(yàn)了下,并且把原文給大家翻譯下。 原文地址:Announcing vue-cli 譯文源地址: Vuejs自己的構(gòu)建工具 先上原文翻譯: 最近有很多大量關(guān)于Reac...

    leoperfect 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<