python编程入门t-Python GUI编程完整示例
本文实例讲述了Python GUI编程。分享给大家供大家参考,具体如下:
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,垂直填充空间排列
self.dirs = Listbox(master=self.dirfm, height=15, width=50, yscrollcommand=self.dirsb.set)
self.dirs.bind('', func=self.setDirAndGo) # ,双击显示路径列表
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='清除', command=self.clrDir, activeforeground='white',
activebackground='blue')
self.ls = Button(master=self.bfm, text='显示列表', command=self.doLS, activeforeground='white',
activebackground='green')
self.quit = Button(master=self.bfm, text='退出', 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 + ':未找到文件,请检查路径!'
elif not os.path.isdir(tdir):
error = tdir + ':不是一个路径!'
if error:
# self.cwd.set(error)
showinfo(title='提示',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('获取目录内容中...')
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()
效果如下:
希望本文所述对大家Python程序设计有所帮助。
python编程入门t-Python GUI编程完整示例相关推荐
- pythonguitkinter编程入门_Python Tkinter GUI编程入门介绍
一.Tkinter介绍 Tkinter是一个python模块,是一个调用Tcl/Tk的接口,它是一个跨平台的脚本图形界面接口.Tkinter不是唯一的python图形编程接口,但是是其中比较流行的一个 ...
- python海龟作图好看图案_编程入门 06:Python 海龟绘图
编程入门 06:Python 海龟绘图 现在让我们开始尝试图形用户界面 (GUI) 程序的编写 Python 标准库中有个 turtle 模块, 可以生成标准的应用程序窗口进行图形绘制 turtle ...
- 青少年python编程入门书-青少年Python编程入门——图解Python
商品详情 书名:青少年Python编程入门--图解Python 定价:69.8 ISBN:9787121395543 作者:傅骞 版次:第1版 出版时间:2020-09 内容提要: 本书介绍pytho ...
- r matlab spss,特别放送 | 零基础编程入门:Python、Matlab、R、SPSS资料大放送
原标题:特别放送 | 零基础编程入门:Python.Matlab.R.SPSS资料大放送 我们一直相信: 一切不能实实在在帮助到同学的资料 都是耍流氓 小助手的目标是: 做一次又一次真正有价值.愉悦感 ...
- python游戏编程入门源代码_python游戏编程入门源代码
[实例简介] <Python游戏编程入门>的源代码,作者Jonathan S.Harbour 很好的资源,希望对学习python的同学有帮助,代码都可以运行 [实例截图] [核心代码] p ...
- 青少年python编程入门书籍_新书推荐 | 《青少年Python编程入门——图解Python》
原标题:新书推荐 | <青少年Python编程入门--图解Python> 随着信息时代的到来,在编程教育中进行计算思维培养正在成为信息技术教育关注的重点.<普通高中信息技术课程标准( ...
- python编程入门经典-Python编程入门经典PDF文档免费下载
作为一门面向对象的开源编程语言,python易于理解和扩展,并且使用起来非常方便.<python编程入门经典>涵盖了python的方方面面,通过学习本书,读者可以立即使用python编写程 ...
- python编程入门视频教程-PYTHON编程从0到1(视频教学版)
本书以Python语言构建了程序设计基础课程的教学体系.本书在对程序设计核心方法的探讨上较其他Python书籍更为全面和深入.通过对本书内容的学习,读者将全面地掌握用Python进行程序设计的基本能力 ...
- python快速编程入门例题-Python快速编程入门,打牢基础必须知道的11个知识点 !...
Python被誉为全世界高效的编程语言,同时也被称作是"胶水语言",那它为何能如此受欢迎,下面我们就来说说Python入门学习的必备11个知识点,也就是它为何能够如此受欢迎的原因. ...
- python编程入门指南-Python编程入门指南(上下册)
前言 第1篇 基础篇 第1章 搭建Python开发环境 1.1 Python概述 1.2 Python的下载与安装 1.3 Python开发工具 第2章 Python入门必学 2.1 注释 2.2 代 ...
最新文章
- 基于问题导向与成果产出的教学模式:《大数据与城市规划》特色课程
- linux命令作为子进程标记,Linux基础命令---显示进程ps
- mysql 数据库引擎切花_asyncio异步编程【含视频教程】
- 长春成人计算机学校有哪些专业学校,长春成人高考学校有哪些
- java doubke类型转换为String_Java基础知识面试题大集合
- 收集常用电路基础公式换算
- SRS 启动正常,拉流没画面,看SRS日志报错 srs is already running
- iOS 乱码问题之一
- 十大经典排序算法-堆排序算法详解
- 根据前序序列和中序序列重建二叉树
- 555低电平出发定时器
- python使用turtle库绘制奥运五环
- JavaScript 排序,不只是冒泡
- DNS是如何进行域名解析的?
- 《动手学深度学习》报错 解决方案RuntimeError: DataLoader worker (pid(s) ...) exited unexpectedly
- 倍福TwinCAT3 的OPC_UA通信测试案例
- IT圈子里鬼混---谈谈IT行业的一些生存之道!
- Java FX 表格数据赋值
- 虚拟机不能识别本地镜像
- mysql设计高考倒计时_HTML/CSS+JS制作一个高考倒计时页面
热门文章
- js-带操作的赋值表达式
- 尼姆博奕 (Nimm Game) 异或运算;
- Linux 常用命令笔记
- 机器学习算法库scikit-learn的安装
- WPF指南之一(WPF的结构)
- dial tcp 10.96.0.1:443: getsockopt: no route to host --- kubernetes(k8s)DNS 服务反复重启
- 201771010106东文财《面向对象程序设计(java)》实验12
- 在QLabel上同时显示文字和图片的方法
- 关于指针和链表中的一些问题
- navigationBar 颜色修改