整套代码+单词资源链接:/download/shadow_heaven/11004612
其实很简单的一个程序,没什么技术含量。
这里写一些可能稍微偏门的代码在这里,其他简单的部分就不写了,有兴趣可以下载源码看~
源码功能:
10秒自动切换单词
左键拖拽移动
右键弹出菜单:删除当前单词 & 退出
左键双击:下一单词
两个问题:
没办法让背景彻底镂空,只能设透明度 [如果有大神看到这里,希望能不吝指教~]
偷懒了,删除单词后当前单词仍会继续显示,但下一轮就会消失。而只有右键中点击退出后,单词文件才会更新
# 用到的包import tkinter as tkimport timeimport threading
# 自动下一单词waitTime = 10def autoChange():while (True):global wordstime.sleep(waitTime)if not words:words = saveWordsword = words.popitem()label["text"] = word[0] # label是窗口里的文本框label1["text"] = word[1]#用线程控制自动切换单词t = threading.Thread(target=autoChange)t.start()
# 主窗口,这里有一些窗口设置信息frame = tk.Tk() # 创建窗口frame.overrideredirect(True) # 不显示窗框frame.wm_attributes("-topmost", 1) # 置顶frame.attributes("-alpha", 0.8) # 窗口不透明度frame.geometry("300x70+10+10") # 大小+左上角坐标
# 控制鼠标的部分,moveStart,move,change,popupmenu是自己写的功能函数canvas = tk.Canvas(frame)canvas.pack()canvas.bind_all("<Button-1>", moveStart) # 左键被按下,记录位置canvas.bind_all("<B1-Motion>", move) # 左键键被按下,同时,鼠标发生移动canvas.bind_all("<Double-Button-1>", change) # 双击canvas.bind_all("<ButtonRelease-3>", popupmenu) # 右键松开
其他简单的就不贴啦~ 如果有大神看到这里,希望能不吝指教~
如果觉得《[Python]悬浮播放单词软件》对你有帮助,请点赞、收藏,并留下你的观点哦!