基于Python实现自制CV剪贴板功能

 更新时间:2024年02月18日 16:15:13   作者:Timer_Cooker  
云桌面的win10不能调出剪贴板,对于CV工程师来说十分不方便,所以这篇文章主要介绍了如何使用Python实现一个CV剪贴板,提升常用语句的复制粘贴效率,感兴趣的可以了解下

前言

云桌面的win10不能调出剪贴板,对于CV工程师来说十分不方便

用Python随手写了一个CV剪贴板,提升常用语句的复制粘贴效率

功能:

  • 界面鼠标左键单击--选中条目
  • 鼠标左键双击--复制选中条目
  • 鼠标中键、退格(删除)键--删除选中(活跃)条目
  • 鼠标右键单击--将复制的内容粘贴到界面(新增条目)中

And:

选中条目按键F2或数字2下移,F3或数字8上移,可以把经常用到的条目放上面

内容很长的可以在最前面加一行注释,连带注释一起复制进来

关闭程序会保存剪贴板上的内容,不会随关机而清空。

效果图

实现代码

1.创建存储数据的文件

#创建存储数据的文件,首次运行前单独运行生成存储数据的文件
import pickle as pk
fw=open("CVData","wb")
pk.dump((),fw)
fw.close()

2.程序代码

from tkinter import *
import pickle as pk
 
def add(event):
	lb.insert(END,lb.clipboard_get())
	
def delete(event):
	lb.delete("active")
	
def save():
	fw=open("CVData","wb")
	pk.dump(lb.get(0,END),fw)
	fw.close()
	win.destroy()
	
def copy(event):
	lb.clipboard_clear()
	lb.clipboard_append(lb.get("active"))
	
def up(event):
	act=lb.get("active")
	con=lb.get(0,END)
	pos=con.index(act)
	lb.delete(0,END)
	for i in range(0,pos-1):
		lb.insert(END,con[i])
	lb.insert(END,con[pos])
	if pos!=0:
		lb.insert(END,con[pos-1])
	for i in range(pos+1,len(con)):
		lb.insert(END,con[i])
	lb.activate(lb.get(0,END).index(act))
		
def down(event):
	act=lb.get("active")
	con=lb.get(0,END)
	pos=con.index(act)
	lb.delete(0,END)
	for i in range(0,pos):
		lb.insert(END,con[i])	
	if pos!=len(con)-1:
		lb.insert(END,con[pos+1])
	lb.insert(END,con[pos])
	for i in range(pos+2,len(con)):
		lb.insert(END,con[i])
	lb.activate(lb.get(0,END).index(act))
	
win=Tk()
win.title("CtrlC+V")
win.attributes("-topmost",1)
lb=Listbox(win,font=("segoe print",15),width=20,height=30)#可调整窗口大小
lb.bind("<Button-3>",add)
lb.bind("<Double-Button-1>",copy)
lb.bind("<Button-2>",delete)
lb.bind("<BackSpace>",delete)
lb.bind("<F3>",up)
lb.bind("<F2>",down)
lb.bind("<Key-8>",up)
lb.bind("<Key-2>",down)
con=pk.load(open("CVData","rb"))
for i in con:
	lb.insert(END,i)
lb.pack()
win.protocol("WM_DELETE_WINDOW",save)
win.mainloop()

3.其他

可以创建快捷方式(Windows),将快捷方式复制到开始菜单目录下即可在开始菜单中启动该程序

按下win键,开始菜单中找到一个非uwp软件的图标,点击打开文件位置就是。图标可以用greenfish生成

Windows下右击快捷方式,属性设置可以指定快捷键。

CV真滴爽~~

到此这篇关于基于Python实现自制CV剪贴板功能的文章就介绍到这了,更多相关Python剪贴板内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python利用PyPDF2库合并多个pdf文件

    Python利用PyPDF2库合并多个pdf文件

    PyPDF2库是一个用于处理PDF文件的Python库,它提供了一系列的工具来读取、编辑、合并、拆分和加密PDF文件,使得我们可以在Python环境下轻松地对PDF文件进行操作,本文将带大家介绍如何通过Python的PyPDF2库合并多个pdf文件,需要的朋友可以参考下
    2023-05-05
  • python3爬虫中多线程进行解锁操作实例

    python3爬虫中多线程进行解锁操作实例

    在本篇文章里小编给大家整理了关于python3爬虫中多线程进行解锁操作实例内容,需要的朋友们可以参考下。
    2020-11-11
  • Python字典添加,删除,查询等相关操作方法详解

    Python字典添加,删除,查询等相关操作方法详解

    这篇文章主要介绍了Python字典添加,删除,查询等相关操作方法详解,需要的朋友可以参考下
    2020-02-02
  • Python数据分析之Matplotlib的常用操作总结

    Python数据分析之Matplotlib的常用操作总结

    Matplotlib是Python的绘图库,它可与NumPy一起使用,提供了一种有效的MatLab开源替代方案,下面这篇文章主要给大家介绍了关于Python数据分析之Matplotlib常用操作的相关资料,需要的朋友可以参考下
    2022-01-01
  • python简单实现计算过期时间的方法

    python简单实现计算过期时间的方法

    这篇文章主要介绍了python简单实现计算过期时间的方法,涉及Python时间操作的相关技巧,需要的朋友可以参考下
    2015-06-06
  • Pandas技巧分享之创建测试数据

    Pandas技巧分享之创建测试数据

    学习pandas的过程中,为了尝试pandas提供的各类功能强大的函数,常常需要花费很多时间去创造测试数据,本篇介绍了一些快速创建测试数据的方法,需要的可以参考一下
    2023-07-07
  • 异步任务队列Celery在Django中的使用方法

    异步任务队列Celery在Django中的使用方法

    对于网站来说,给用户一个较好的体验是很重要的事情,其中最重要的指标就是网站的浏览速度。因此服务端要从各个方面对网站性能进行优化,这篇文章主要介绍了异步任务队列Celery在Django中的使用方法,感兴趣的小伙伴们可以参考一下
    2018-06-06
  • 浅谈Python数学建模之整数规划

    浅谈Python数学建模之整数规划

    整数规划并不一定是线性规划问题的变量取整限制,对于二次规划、非线性规划问题也有变量取整限制而引出的整数规划。但在数学建模问题中所说的整数规划,通常是指整数线性规划。整数规划与线性规划的差别只是变量的整数约束。选择简单通用的编程方案,让求解器去处理吧
    2021-06-06
  • Python递归函数返回值为None问题及解决

    Python递归函数返回值为None问题及解决

    文章主要讨论了在Python中使用递归函数时可能出现的问题,特别是递归函数的返回值不符合预期的情况,文章通过一个具体的例子说明了这个问题,并解释了如何通过在递归调用时加上return语句来解决这个问题
    2024-11-11
  • Python动态创建类实例详解

    Python动态创建类实例详解

    这篇文章主要为大家介绍了Python动态创建类实例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-12-12

最新评论