python tkinter使用(九)
python tkinter使用(九)
本文主要讲下scrolledText中图片的插入,以及常见的错误.
- 使用Image.open来打开图片
- 使用
ImageTk.PhotoImage()方法将图片转换为tkinter中的图片对象 - 使用
insert()方法插入图片
ImageTk 直接引入后,会遇到如下错误:
Traceback (most recent call last):
File "ScrolledTextTest.py", line 11, in <module>
from PIL import Image, ImageTk
ImportError: cannot import name 'ImageTk' from 'PIL' (/usr/lib/python3/dist-packages/PIL/__init__.py)
这里需要我们install:
sudo apt-get install python3-pil python3-pil.imagetk
#!/usr/bin/python3
# -*- coding: UTF-8 -*-
"""
@Author: zh
@Time 2023/11/27 上午11:40 .
@Email:
@Describe:
"""
import tkinter as tk
from tkinter.scrolledtext import ScrolledText
from PIL import Image, ImageTk
# 创建窗口
root = tk.Tk()
root.title("simpleDialog")
# 创建一个框架并使用pack()方法
frame1 = tk.Frame(root)
frame1.pack()
text2 = ScrolledText(frame1)
text2.pack()
# text2.grid(column=0, row=0)
text2.insert(tk.INSERT, "Hello, world!")
text2.tag_add("tag1", 1.0, 1.5)
text2.tag_config("tag1", background="green")
text2.tag_remove("tag1", 1.3, 1.5)
img = Image.open("img/test.png")
photo = ImageTk.PhotoImage(img)
text2.image_create(tk.END, image=photo)
root.mainloop()
python tkinter使用(九)的更多相关文章
- python第二十九课——文件读写(复制文件)
自定义函数:实现文件复制操作有形参(2个) 没有返回值相似版(不用) def copyFile(src,dest): #1.打开两个文件:1个关联读操作,1个关联写操作 fr=open(src,'rb ...
- python第二十九课——文件读写(读取读取中文字符)
演示:读取中文字符 结论: 1).如果不设置encoding,默认使用gbk进行编解码 2).如果编码和解码不一致,最终导致报错,但是一旦设置了errors='ingore',那么就不会报错,而采取乱 ...
- Python Tkinter基础控件入门实例
分享一个Python Tkinter基础控件用法的入门例子,包括窗口的显示.显示内置图片.弹出窗口.菜单等. 例子,Python Tkinter基础控件的用法 # -*- coding: utf-8 ...
- Python Tkinter 学习成果:点歌软件music
笔者工作业余时间也没什么爱好,社交圈子也小,主要娱乐就是背着自己带电瓶的卖唱音响到住地附近找个人多的位置唱唱KtV. 硬件上点歌就用笔记本电脑,歌曲都是网上下载的mkv格式的含有两个音轨的视频.因此点 ...
- Python Tkinter Entry(文本框)
Python学习记录--关于Tkinter Entry(文本框)的选项.方法说明,以及一些示例. 属性(Options) background(bg) borderwidth(bd) cursor e ...
- python tkinter Listbox用法
python tkinter组件的Listbox的用法,见下面代码的演示: from tkinter import * root=Tk() v=StringVar() #Listbox与变量绑定' l ...
- python Tkinter之Button
Button小部件是一个标准的Tkinter的部件,用于实现各种按钮.按钮可以包含文本或图像,您可以调用Python函数或方法用于每个按钮. Tkinter的按钮被按下时,会自动调用该函数或方法. 该 ...
- python gui tkinter快速入门教程 | python tkinter tutorial
本文首发于个人博客https://kezunlin.me/post/d5c57f56/,欢迎阅读最新内容! python tkinter tutorial Guide main ui messageb ...
- Python tkinter模块弹出窗口及传值回到主窗口操作详解
这篇文章主要介绍了Python tkinter模块弹出窗口及传值回到主窗口操作,结合实例形式分析了Python使用tkinter模块实现的弹出窗口及参数传递相关操作技巧,需要的朋友可以参考下 本文实例 ...
- Python Tkinter 文本框(Entry)
Python Tkinter 文本框用来让用户输入一行文本字符串. 你如果需要输入多行文本,可以使用 Text 组件. 你如果需要显示一行或多行文本且不允许用户修改,你可以使用 Label 组件. 语 ...
随机推荐
- 提高 Web 开发效率的10个VS Code扩展插件,你知道吗?
前言 一个出色的开发工具可以显著提高开发人员的开发效率,而优秀的扩展插件则能更进一步地提升工具的效率.在前端开发领域,VSCode毫无疑问是目前最受欢迎的开发工具.为了帮助前端开发人员提高工作效率,今 ...
- ATtiny88初体验(七):TWI
ATtiny88初体验(七):TWI TWI模块介绍 ATtiny88的TWI模块兼容Phillips I2C以及SMBus,支持主从模式,支持7bit地址,最大允许128个不同的从机地址.在多主机模 ...
- 深挖 Python 元组 pt.1
哈喽大家好,我是咸鱼 好久不见甚是想念,2023 年最后一次法定节假日已经结束了,不知道各位小伙伴是不是跟咸鱼一样今天就开始"搬砖"了呢? 我们知道元组(tuple)是 Pytho ...
- 原创基于Scrum框架产研团队运作20问
学习完了 Scrum,实际使用中,是否遇到/思考过下面的问题? Product Owner的老板是谁.谁来给 Product Owner打绩效.考核的标准是啥? Scrum Master 的老板是谁. ...
- [ABC202E] Count Descendants 题解
Count Descendants 题目大意 给定一颗以 \(1\) 为根的树,多次询问求某点的子树中深度为给定值的点的个数. 思路分析 对于每个深度开一个 vector,从大到小存下这个深度的所有点 ...
- mybatis 操作 mysql 大批量插入,数据分页处理
/** * 大批量插入,数据分页处理 * * @param tableName 临时表名称 * @param mapHead 临时表属性 Map,key = 临时表字段属性, value = 具体值. ...
- [学习笔记]TypeScript查缺补漏(二):类型与控制流分析
@ 目录 类型约束 基本类型 联合类型 控制流分析 instanceof和typeof 类型守卫和窄化 typeof判断 instanceof判断 in判断 内建函数,或自定义函数 赋值 布尔运算 保 ...
- 夯实JAVA基本之一 —— 泛型详解(1):基本使用(转)
一.引入1.泛型是什么首先告诉大家ArrayList就是泛型.那ArrayList能完成哪些想不到的功能呢?先看看下面这段代码:ArrayList<String> strList = ne ...
- mysql group by 执行原理及千万级别count 查询优化
大家好,我是蓝胖子,前段时间mysql经常碰到慢查询报警,我们线上的慢sql阈值是1s,出现报警的表数据有 7000多万,经常出现报警的是一个group by的count查询,于是便开始着手优化这块, ...
- C++跨DLL内存所有权问题探幽(二)CRT中MT和MD混用导致的堆损坏
0xC0000374: 堆已损坏. (参数: 0x00007FFA1E9787F0). _Mem 是 nullptr 我在开发的过程中有遇到上面两个东西的bug,百思不得其解,最后才发现这个和两个DL ...