介绍
这期内容当中小编将会给大家带来有关如何在python3项目中使用GUI刷屏器,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
一。准备工作
除tkinter库之外还使用了pynput库,可以使用
pip install pynput
安装
四。源代码
import 再保险 import 时间 import pyperclip 得到tkinter import * 得到tkinter import 对话框 得到tkinter import  ttk 得到pynput.keyboard import 键,控制器 import 线程 得到PIL import Image  ImageTk & # 39;& # 39;& # 39; 难点 按键复用 & # 39;& # 39;& # 39; 一个=[“。//logo.png"依赖,& # 39;。//favicon.ico& # 39;依赖) class 应用程序: 自我,def __init__ (): ,self.flag=True self.window 才能=,Tk () width 才能=230 height 才能=260 时间=screenWidth 才能;self.window.winfo_screenwidth(), #,获取显示区域的宽度 时间=screenHeight 才能;self.window.winfo_screenheight(), #,获取显示区域的高度 left 才能=,(screenWidth 安康;宽度),/2 top 才能=,(screenHeight 安康;高度),/2 self.window.geometry才能(“% dx % d + % d + % d", %,(宽度,高度,,,,顶部)) self.window.title才能(& # 39;刷一刷-v1.0& # 39;) self.window.iconbitmap才能(一个[1]) self.window.resizable才能(0,0) self.create_widget才能() self.config_widget才能() self.place_widget才能() self.window.mainloop才能() ,def create_widget(自我): self.paned才能=PanedWindow (self.window) self.img才能=一个 时间=photo 才能;Image.open (self.img[0]), #,括号里为需要显示在图形化界面里的图片 photo 才能=,photo.resize((150年,50),#,规定图片大小 时间=self.paned.img 才能;ImageTk.PhotoImage(图) self.l0 才能=,标签(self.window,图像=self.paned.img,证明=& # 39;中心# 39;) self.l1 才能=,ttk.Label (self.window,文本=& # 39;内容:& # 39;) self.l1 才能=,ttk.Label (self.window,文本=& # 39;频率:& # 39;) 时间=self.t1 才能;文本(self.window) 时间=self.c1 才能;ttk.Combobox (self.window,,宽度=13) self.l2才能=ttk.Label (self.window文本=& # 39;秒/次& # 39;) self.b1 才能=,ttk.Button (self.window,文本=& # 39;开始& # 39;,,) self.b2 才能=,ttk.Button (self.window,文本=& # 39;退出& # 39;,) self.m才能=菜单(self.window) self.window才能[& # 39;菜单# 39;]=self.m self.s1才能=菜单(self.m tearoff=False) self.s2才能=菜单(self.m tearoff=False) self.s3才能=菜单(self.m tearoff=False) ,def place_widget(自我): self.l0.pack才能() self.l1.place才能(x=20,, y=90) self.t1.place才能(x=40岁,y=60,,=150,宽度,高度=80) self.l1.place才能(x=20,, y=162) self.c1.place才能(x=65, y=160,宽度=80) self.l2.place才能(x=160, y=160) self.b1.place才能(x=20,, y=200) self.b2.place才能(x=125, y=200) ,def config_widget(自我): self.b1.config才能(命令=λ:,self.thread_it (self.start)) self.b2.config才能(,命令=self.window_quit) rate_list才能=[& # 39;1 & # 39;& # 39;0.1 & # 39;,& # 39;0.01 & # 39;】 self.c1.config才能(value=https://www.yisu.com/zixun/rate_list) self.m.add_cascade(标签='文件”,菜单=self.s1) self.s1.add_command(标签='退出”,命令=self.window_quit) self.m.add_cascade(标签='操作,菜单=self.s2) self.m.add_cascade(标签='关于”,菜单=self.s3) self.s2。add_command(标签='开始F9,命令=λ:self.thread_it (self.start)) self.s2。add_command(标签='停止F10”,命令=λ:self.thread_it (self.start)) self.s3.add_command(标签='说明”,命令=self.show_infos) #设置热键 self.window。绑定(,λ:self.thread_it (self.pre_start)) self.window。绑定( ,λ:self.thread_it (self.pre_start)) self.window.bind(<越狱>,self.escape) self.window.bind ( , self.clear_content) self.window.protocol (WM_DELETE_WINDOW, self.window_quit) def clear_content(自我、事件): self.t1.delete (0.0) def pre_start(自我、事件): self.start () def开始(自我): 如果self.b1 '文本'=='开始”: self.flag=True t1_content=self.t1.get(1.0,“结束”).strip () 如果len (t1_content) !=0: 差距=self.c1.get () 试一试: 如果re.match ((^ 0 | ^ 1)/0,1}/d + $’,差距)或int (gap)> 0: #将t1内容复制到剪切板 pyperclip.copy (t1_content) 键盘=控制器() self.b1.config(文本='停止”) self.t1.config(状态=敖谩? 而真正的: #使用控制+ v组合键进行粘贴 如果self.flag: keyboard.press (Key.ctrl.value) keyboard.press (' v ') keyboard.release (' v ') keyboard.release (Key.ctrl.value) keyboard.press (Key.enter.value) keyboard.release (Key.enter.value) 打印(t1_content) time . sleep(浮动(gap)) 其他: 打破 其他: 对话框。showerror(“错误”、“请输入正确的数值!”) self.c1.delete(0,结束) 除了ValueError: 对话框。showerror(“错误”、“请输入正确的数值!”) null null null null null null null null null null null null null null null null null null null null null null null null null null 如何在python3项目中使用GUI刷屏器