使用Tkinter选择驱动器号

时间:2019-01-08 01:59:07

标签: python-3.x tkinter drive

我正在尝试使用tkinter创建一个gui,它允许用户选择一个驱动器号,并让gui结束并返回所选的驱动器号。我在寻找使用户从驱动器列表中选择并返回驱动器的正确方法时遇到麻烦。如果有人可以帮助您,将不胜感激。

1 个答案:

答案 0 :(得分:1)

假设您使用的是Windows平台,则可以使用win32api.GetLogicalDriveStrings()获取可用的驱动器。下面是一个示例程序:

import win32api
from tkinter import *

def select_drive(drv):
    # print the drive and then exit program
    print(drv)
    root.destroy()

root = Tk()
root.title('Select Drive')

drives = [x[:2] for x in win32api.GetLogicalDriveStrings().split('\x00')[:-1]]
font=('Courier New', 14, 'bold')
for i, drv in enumerate(drives):
    Button(text=drv, font=font, width=5, command=lambda d=drv: select_drive(d)).grid(row=i//5, column=i%5, padx=5, pady=3)

root.mainloop()

输出:

enter image description here

已更新:如果尚未安装 win32api 模块,则可以使用以下代码获取可用的驱动器:

import os, string

drives = ['%s:'%d for d in string.ascii_uppercase if os.path.exists('%s:'%d)]