tkinter 模块
import tkinter
mytk = tkinter.Tk()
mytk.title("Hello python")
mytk.geometry("600x800+0+0")#600:宽度, 800:高度,x,y左上角坐标。
mytk.mainloop() #运行起来
input模块:
import tkinter
import os
def go():
print(entry.get())#返回当前文本
if entry.get() == "记事本":
os.system("notepad")
win = tkinter.Tk()
entry = tkinter.Entry(win) #input
entry.pack()
button = tkinter.Button(win, text="搜索", command=go) #当点击文本内容时会调用go方法
button.pack()
win.mainloop()
写一个关闭QQ的界面(前提是有QQ在运行):
import tkinter
import os
def go():
print(entry.get())
ans = entry.get().upper()
if ans == "QQ":
os.system("TASKKILL /f /im QQ.exe")
win = tkinter.Tk()
win.geometry("200x200+0+0")
entry = tkinter.Entry(win) # input
entry.pack()
button = tkinter.Button(win, text="搜索要关闭的程序", command=go)
button.pack()
win.mainloop()
输出结果为:
运行程序:点击按钮你的QQ就关闭了。
写一个文本编辑器:
import tkinter
win = tkinter.Tk()
text = tkinter.Text(win)#文本编辑器
win.title("文本编辑器")
text.insert(tkinter.INSERT, "你好呀")
text.pack()
text.mainloop()
输出结果为:
表格数据:
import tkinter
from tkinter import ttk
win = tkinter.Tk()
tree = ttk.Treeview(win)
tree["columns"] = ("姓名", "年龄", "身高")
tree.column("姓名", width=100) #表示列
tree.column("年龄", width=100)
tree.column("身高", width=100)
#相当于是初始化数据
tree.heading("姓名", text="姓名-name")#显示表头
tree.heading("年龄", text="年龄-age")
tree.heading("身高", text="身高-tall")
tree.insert("", 1, text="line1", value=("1", "2", "3"))
tree.insert("", 2, text="line2", value=("1", "2", "3"))
tree.insert("", 3, text="line3", value=("1", "2", "3"))
tree.insert("", 4, text="line4", value=("1", "2", "3"))
tree.pack()
win.mainloop()
输出结果为:
树形存储数据
import tkinter
from tkinter import ttk
win = tkinter.Tk()
tree = ttk.Treeview(win)
#def insert(self, parent, index, iid=None, **kw):
'''
parent:父节点
index:该组件要插入的为主
iid:文件名
'''
myid = tree.insert("", 0, "中国", text="中国China")
myidx1 = tree.insert(myid, 0, "北京", text ="中国北京")
myidx2 = tree.insert(myid, 0, "浙江", text="中国江苏")#0表示插入的位置
tree.pack()
win.mainloop()
输出结果为:
- 未完成任务
- 通过Text方法实现一个python文本编辑器。
- 通过表单的形式读出CSDN文本的内容。
设计一个:具有检索功能的图形界面
要求:面向对象设计
import tkinter
class input_class:
def __init__(self):
self.win = tkinter.Tk()
self.entry = tkinter.Entry(self.win)
self.win.geometry("800x600+0+0")
self.entry.pack()
def root(self):
return self.win
def mainlopp(self):
self.win.mainloop()
def Entry1(self):
return self.entry.get()
from class_work import input_class
class find_search():
def __init__(self):
self.keys = input_class.input_class()
def root(self):
return self.keys.root()
def mainlopp(self):
self.keys.mainlopp()
def entry(self):
return self.keys.Entry1()
import tkinter
from class_work import find_search
class view_file:
def __init__(self, path):
self.file = open(path, 'r')#打开文件
self.input = find_search.find_search()#建立UI
self.button = self.input.root()
self.But = tkinter.Button(self.button,text="搜索",command=self.find)
self.But.pack()
self.box_file =self.input.root()
self.box = tkinter.Listbox(self.box_file, width=800, height=600)
self.box.pack()
def find(self):
keys = self.input.entry()
while True:
value = self.file.readline()
if not value:
break
else:
if keys in value:
self.box.insert(tkinter.END, value)
else:
pass
def show(self):
self.input.root().mainloop()
def __del__(self):
self.file.close()
from class_work import view_file
file = view_file.view_file('tang')
file.show()
tang.txt文件为:
选择搜索:
输出结果为: