第十节 tkinter模块

一、tkinter库

库的名称:tkinter

作用:python中用于创建图形界面(GUI)的库

导库方法:

import tkinter

二、功能总结

1. Tk()

作用:建立空白窗口

root窗口也叫主窗口、根窗口,是GUI编程的基础。

格式:root = tkinter.Tk()

代码:

import tkinter
root = tkinter.Tk()

2. root.mainloop()

作用:一直显示窗口

import tkinter
root = tkinter.Tk()
root.mainloop()

3. geometry()

作用:设置窗口大小

格式:root. geometry("宽 x 高")

设置参数需要使用引号,宽与高中间是小写字母x,表示单位是像素。

root.geometry("600x400")

4. configure()

作用:设置窗口背景颜色

格式:root.configure(background="black")

设置背景颜色需要使用引号

root.configure(background="black")

5. Listbox()

作用:创建列表框控件

格式: listb = tkinter.Listbox(root)

listb.pack()

listb是控件名,root是主窗口名,listb.pack()表示显示控件。

listb = tkinter.Listbox(root)
listb.pack()

6. insert()

作用:列表框中添加文字

格式:listb.insert(行序号,插入内容)

行序号是数字,代表插入的位置

插入的内容是字符串,也可以是代表字符串的变量

listb.insert(0"hello,world")

7. 列表框设置样式

作用:获取内容

格式:listb = tkinter.Listbox(root, width=60, height=20, bg="black", fg="green")

width表示宽度,height表示高度,bg表示背景颜色,fg表示字体颜色

listb = tkinter.Listbox(root, width=60, height=20, bg="black", fg="green")

8. Button()

作用:创建按钮并显示

格式:

button1 = tkinter.Button(root, text="黑客更新", command=renew)

button1.pack()

root表示主窗口,text表示按钮上的文字,command表示点击按钮执行的函数

button1 = tkinter.Button(root, text="黑客更新", command=renew)
button1.pack()

9. 显示

#新闻三完整演示
import requests, bs4
from xes.tool import *

xopen()  # 用于打开文件夹

def getTool(url):
    response = requests.get(url)
    response.encoding = "UTF-8"
    if response.status_code == 200:
        return response.text

def parseTool(data):
    soup = bs4.BeautifulSoup(data, "lxml")
    data1 = soup.find_all(name="div", class_="article")
    for n in data1:
        data2 =n.find_all(name="a")
        print("题目:"+data2[0].text+"\n")
        print("摘要:"+data2[1].text+"\n")
        print("主题:"+data2[2].text+"\n")
        with open("新闻.txt", "a",encoding = "utf-8") as file:
            file.write("题目:"+ data2[0].text+"\n")
            file.write("摘要:"+ data2[1].text+"\n")
            file.write("主题:"+ data2[2].text+"\n")

html = getTool("https://icourse.xesimg.com/programme/static/py/pcdata/lw-web/新闻网站/index.html")
parseTool(html)

import tkinter
newsNum = 0
newsList= []
#___________________________________________________
# 打开并逐行读取新闻文件    
with open("新闻.txt", "r", encoding="utf-8") as file:
    for line in file:
        newsList.append(line)
#____________________________________________________
#点击按钮更新新闻
def renew():
    global listb, newsList, newsNum
    listb.insert(0, newsList[newsNum])
    newsNum = newsNum+1

root = tkinter.Tk()
root.geometry("600x400")
root.configure(background="black")
#创建列表框        
listb = tkinter.Listbox(root, width=60, height=20, bg="black", fg="green")
listb.pack()
# 设置按钮
button1 = tkinter.Button(root, text="黑客更新", command=renew)
button1.pack()     
root.mainloop()

alt 显示

10. 按钮控件名.configure()

作用:重新定义按钮内容

格式:按钮控件名.configure(text="新的显示文字")

button0. configure(text=nameList[imgNum])

11. 创建图片按钮

作用:创建图片按钮

格式:button = tkinter.Button(root,image=photo,command=函数)

button.pack()

image参数表示添加图片对象,command参数可省略

12. 换图函数

导库:from carton import *

换下一张图片:

nextPic(button3,nameList[imgNum])

换上一张图片:

lastPic(button3,nameList[imgNum])

button3代表图片对应的按钮名称,nameList列表存储的是动漫名称。

13. grid布局方式

作用:设置按钮的位置

格式:button.grid(row=行号,column=列号)

行号和列号都是从0开始

一、PIL库

库的名称:PIL

作用:python中进行图像处理常用的库

image模块:包含打开图片(open),保存图片(save),显示图片(show)等功能

imageTk模块:用来将图片转换成与tkinter兼容的图像

导库方法:

from PIL import Image,ImageTk

二、功能总结

1. open()

作用:打开图片

root窗口也叫主窗口、根窗口,是GUI编程的基础。

格式:image = Image.open("图像名称.图片格式")

2. ImageTk.PhotoImage()

作用:将图片变为tkinter能识别的图片

格式:photo = ImageTk.PhotoImage(image)

from PIL import Image,ImageTk
image = Image.open("图像名称.图片格式")
photo = ImageTk.PhotoImage(image)

results matching ""

    No results matching ""