In this paper, an example is given Python GUI programming . Share with you for your reference , The details are as follows :

import os

from time import sleep

from tkinter import *

from tkinter.messagebox import showinfo

class DirList(object):

def __init__(self, initdir=None):

self.top = Tk()

self.label = Label(master=self.top, text='Directory Lister V1.0')

self.label.pack()

self.cwd = StringVar(master=self.top)

self.dirl = Label(self.top, fg='blue', font=('Helvetica', 14, 'bold'))

self.dirl.pack()

self.dirfm = Frame(master=self.top)

self.dirsb = Scrollbar(master=self.dirfm)

self.dirsb.pack(side=RIGHT,fill=Y)    # fill=Y, Vertical fill space arrangement

self.dirs = Listbox(master=self.dirfm, height=15, width=50,
yscrollcommand=self.dirsb.set)

self.dirs.bind('', func=self.setDirAndGo)   # , Double click to display the list of paths

self.dirsb.config(command=self.dirs.yview)

self.dirs.pack(side=LEFT, fill=BOTH)

self.dirfm.pack()

self.dirn = Entry(master=self.top, width=50, textvariable=self.cwd)

self.dirn.bind('', func=self.doLS)

self.dirn.pack()

self.bfm = Frame(master=self.top)

self.cleer = Button(master=self.bfm, text=' eliminate ', command=self.clrDir,
activeforeground='white',

activebackground='blue')

self.ls = Button(master=self.bfm, text=' Display list ', command=self.doLS,
activeforeground='white',

activebackground='green')

self.quit = Button(master=self.bfm, text=' sign out ', command=self.top.quit,
activeforeground='white',

activebackground='red')

self.cleer.pack(side=LEFT)

self.ls.pack(side=LEFT)

self.quit.pack(side=LEFT)

self.bfm.pack()

if initdir:

self.cwd.set(os.curdir)

self.doLS()

def setDirAndGo(self, ev=None):

self.last = self.cwd.get()

self.dirs.config(selectbackground='red')

chek = self.dirs.get(self.dirs.curselection())

if not chek:

chek = os.curdir

self.cwd.set(chek)

self.doLS()

def doLS(self, ev=None):

error = ''

tdir = self.cwd.get()

if not tdir:

tdir = os.curdir

if not os.path.exists(tdir):

error = tdir + ': no files found , Please check the path !'

elif not os.path.isdir(tdir):

error = tdir + ': It's not a path !'

if error:

# self.cwd.set(error)

showinfo(title=' Tips ',message=error)

self.top.update()

# sleep(2)

if not (hasattr(self, 'last') and self.last):

self.last = os.curdir

self.cwd.set(self.last)

self.dirs.config(selectbackground='LightSkyBlue')

self.top.update()

return

if not os.path.isdir(tdir):

self.cwd.set('')

else:

self.cwd.set(' Get the contents of the directory ...')

self.top.update()

dirlist = os.listdir(tdir)

dirlist.sort()

os.chdir(tdir)

self.dirl.config(text=os.getcwd())

self.dirs.delete(0, END)

self.dirs.insert(END, os.curdir)

self.dirs.insert(END, os.pardir)

for eachfile in dirlist:

self.dirs.insert(END, eachfile)

self.cwd.set(os.curdir)

self.dirs.config(selectbackground='LightSkyBlue')

def clrDir(self, ev=None):

self.cwd.set('')

if __name__ == '__main__':

dir = DirList(os.curdir)

mainloop()

The effect is as follows :

I hope this article is helpful to you Python Programming helps .

Technology