在把文件拖拽到窗口后,获取的文件路径不是系统路径,无法使用OS模块获取文件的信息,
代码如下:
import os
from tkinter import messagebox
import windnd
from tkinter import *
window_width = 200
window_height = 200
def window_init(window, width, height):
ws = window.winfo_screenwidth()
hs = window.winfo_screenheight()
# 居中
x = (ws / 2) - (width / 2)
y = (hs / 2) - (height / 2)
window.geometry("%dx%d+%d+%d" % (width, height, x, y))
window.resizable(False, False)
window.overrideredirect(True)
window.attributes('-topmost', 'true')
def message(title, msg, parent=None):
messagebox.showinfo(title=title, message=msg, parent=parent)
def dragged_files(files):
print(files)
a = str(files[0])
b = a.rfind('\\')
b1 = a.rfind('b')
c1 = a[b1 + 2: -1]
print(c1)
fs = os.stat(c1)
root = Tk()
window_init(root, window_width, window_height)
windnd.hook_dropfiles(root, func=dragged_files)
root.mainloop()
报错如下:

获取的文件路径:

实际的文件路径:
F:\xfmovie\桌面\1.txt