富文本框text控件 | 软件界面加1个文本框,并给这个文本框插入文字和图片 | txt1=tk.Text(chuangkou1) | txt1.tag_config | foreground | background | txt1.insert(tk.END) | img1=Image.open | w,h=img1.size | img1=img1.resize | txt1.image_create |
# 一定要定义编码
# -*- coding: UTF-8 -*-
# 【1】导入库↓顺便给tkinter库取个别名为tk,
# 好处是调用的时候更方便调用。
import tkinter as tk
# 新导入库,用于pillow,支持各种后缀的图片
from PIL import ImageTk,Image
# --------自定义按钮对应的函数--开始--------------- #
######
# --------自定义按钮对应的函数--结束--------------- #
# 【1】创建软件窗口实体,窗体
chuangkou1=tk.Tk()
# 【2】软件界面顶部显示名称以及版本号
chuangkou1.title("富文本框=文本+插图")
# 【3】软件的长宽、在当前桌面屏幕的左边距、顶上边距
# 定义窗口自身宽度
ck1w=400
# 定义窗口自身高度
ck1h=300
# 获取屏幕宽度
pmw=chuangkou1.winfo_screenwidth()
# 获取屏幕高度
pmh=chuangkou1.winfo_screenheight()
# 计算水平方向的起点位置坐标
x1=pmw/2-ck1w/2
# 计算垂直方向的起点位置坐标
y1=pmh/2-ck1h/2
# 设置窗体所在屏幕的坐标位置
chuangkou1.geometry("%dx%d+%d+%d"%(ck1w,ck1h,x1,y1))
# 【4】软件界面窗体的背景属性,背景颜色改成绿色,绿色的颜色属性值
chuangkou1["background"]="#ffffcc"
# 【5】显示第1个文本框
txt1=tk.Text(chuangkou1)
txt1.pack()
# 利用某个别名作为标签,具体的对应标签的属性进行设置
# 定义文本框,以及设置加载的默认文字设置字体、大小、文字颜色,文字的背景色
txt1.tag_config("f1",font=("黑体",30),foreground="red",background="yellow")
# 给文本框加载默认文字,索引
txt1.insert(tk.END,"python编程带给你欢乐!\n","f1")
# 定义一张图片,在PIL库代码里,调用设置图片路径
img1=Image.open("./pic1/konglong.png")
w,h=img1.size
# resize 对图片的尺寸进行重新赋值
img1=img1.resize((int(w/2),int(h/2)))
pic1=ImageTk.PhotoImage(img1)
# 把这个图片加载到txt1的富文本框里
# 针对富文本框专用的图片插入函数
txt1.image_create(tk.END,image=pic1)
# 再定义1个文本,以及设置加载的默认文字设置字体、大小、文字颜色,文字的背景色
txt1.tag_config("f2",font=("楷体",30),foreground="black",background="orange")
# 给文本框加载默认文字
txt1.insert(tk.END,"\npython改造世界!","f2")
# ------末尾必须放死循环代码---分割线------ #
# 【End.1】持续显示软件界面,相当于死循环,↓
# 【End.1】这个窗体的作用是监听这个界面发生的一切事件,包括鼠标点击动作。
# 【End.1】下面这个死循环代码必须放在最后面。
chuangkou1.mainloop()