python tkinter 使用(八)

本文主要讲下tkinter库中的其他的一些模块,如simpleDialog,scrollerText等.

1: simpleDialog

simpledialog提供一些简单的对话框,用于获取用户输入.

  1. askinteger(title, prompt, **kw):
  2. askfloat(title, prompt, **kw):
  3. askstring(title, prompt, **kw):

title为对话框的标题,prompt为提示信息,**kw为可选参数,用于设置对话框的其他属性.

#!/usr/bin/python3
# -*- coding: UTF-8 -*-
"""
@Author: zh
@Time 2023/11/27 上午10:11 .
@Email:
@Describe:
"""
import tkinter as tk
import tkinter.simpledialog as sd
# 创建窗口
root = tk.Tk()
root.title("simpleDialog")
root.geometry("500x500") def askinteger(event):
result = sd.askinteger("this is askinteger","content")
print('simpleDialog',result) def askfloat(event):
result = sd.askfloat("this is askfloat","content")
print('simpleDialog',result) def askstring(event):
result = sd.askstring("this is askstring","content")
print('simpleDialog',result) #内部会校验输入的内容是否合法
btn = tk.Button(text="askinteger")
btn.bind('<1>',askinteger)
btn.pack() btn = tk.Button(text="askfloat")
btn.bind('<1>',askfloat)
btn.pack() btn = tk.Button(text="askstring")
btn.bind('<1>',askstring)
btn.pack() root.mainloop()

2: colorchooser

tkinter模块内置的颜色选择器,可以让用户选择颜色.

def colorselect():
color = tk.colorchooser.askcolor()
print(color) tk.Button(root, text="colorselect", command=colorselect).pack()

3: scrolledText

tkinter.scrolledText 是一个带有滚动条的多行文本框。它可以用于显示和编辑大量文本.

import tkinter as tk
from tkinter.scrolledtext import ScrolledText text =ScrolledText(root, width=50, height=10)
text.pack(side=tk.LEFT, expand=True) def insertScrollText():
result = sd.askstring("this is askstring", "请输入插入scrollerText的内容")
text.insert(tk.END,result) tk.Button(root, text="insert", command=insertScrollText).pack()

ScrolledText小部件的insert()方法向其中添加文本. 具体调用如insertScrollText.

另外可以修改font 属性来设置scrolledText的文字大小,fg来设置文字颜色.

  1. .tag_add(tagname, start, end) :给指定范围内的文本添加标签,其中tagname为标签名,startend为文本范围的起始和结束位置。

  2. tag_remove(tagname, start, end):移除指定范围内的文本标签,其中 tagname为标签名,start和end为文本范围的起始和结束位置。

    #!/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
    # 创建窗口
    root = tk.Tk()
    root.title("ScrolledText")
    root.geometry("500x500") text2 = ScrolledText(root, width=30, height=10)
    text2.grid(column=0, row=0)
    text2.insert(tk.INSERT, "Hello, world!")
    # 给"Hello"添加标签
    text2.tag_add("tag1",1.0,1.5)
    # 设置标签样式
    text2.tag_config("tag1",background="green")
    # 移除标签
    text2.tag_remove("tag1",1.3,1.5)
    root.mainloop()
  3. tag_config: 配置指定标签的样式

text =ScrolledText(root, width=30, height=10,font=("Helvetica", 12), fg="blue")
text.pack(side=tk.LEFT, expand=True)
text.tag_config("font", font=("Helvetica", 20))
text.tag_config("color", foreground="red") def insertScrollText():
result = sd.askstring("this is askstring", "请输入插入scrollerText的内容")
text.insert(tk.END, result)
text.insert(tk.END,result,"font")
text.insert(tk.END, result, "color") tk.Button(root, text="insert", command=insertScrollText).pack()

python tkinter 使用(八)的更多相关文章

  1. 2015老男孩Python培训第八期视频教程

    2015老男孩Python培训第八期视频教程,希望您通过本教程的学习,能学会常用方法和技巧.教程从基础知识开始讲解一直到后期的案例实战,完全零基础学习,从初学者的角度探讨分析问题,循序渐进由易到难,确 ...

  2. Python Tutorial 学习(八)--Errors and Exceptions

    Python Tutorial 学习(八)--Errors and Exceptions恢复 Errors and Exceptions 错误与异常 此前,我们还没有开始着眼于错误信息.不过如果你是一 ...

  3. python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍

    目录 python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍.md 一丶字典 1.字典的定义 2.字典的使用. 3.字典的常用方法. python学习第八讲,python ...

  4. {Python之线程} 一 背景知识 二 线程与进程的关系 三 线程的特点 四 线程的实际应用场景 五 内存中的线程 六 用户级线程和内核级线程(了解) 七 python与线程 八 Threading模块 九 锁 十 信号量 十一 事件Event 十二 条件Condition(了解) 十三 定时器

    Python之线程 线程 本节目录 一 背景知识 二 线程与进程的关系 三 线程的特点 四 线程的实际应用场景 五 内存中的线程 六 用户级线程和内核级线程(了解) 七 python与线程 八 Thr ...

  5. Python Tkinter基础控件入门实例

    分享一个Python Tkinter基础控件用法的入门例子,包括窗口的显示.显示内置图片.弹出窗口.菜单等. 例子,Python Tkinter基础控件的用法 # -*- coding: utf-8 ...

  6. Python Tkinter 学习成果:点歌软件music

    笔者工作业余时间也没什么爱好,社交圈子也小,主要娱乐就是背着自己带电瓶的卖唱音响到住地附近找个人多的位置唱唱KtV. 硬件上点歌就用笔记本电脑,歌曲都是网上下载的mkv格式的含有两个音轨的视频.因此点 ...

  7. Python Tkinter Entry(文本框)

    Python学习记录--关于Tkinter Entry(文本框)的选项.方法说明,以及一些示例. 属性(Options) background(bg) borderwidth(bd) cursor e ...

  8. python tkinter Listbox用法

    python tkinter组件的Listbox的用法,见下面代码的演示: from tkinter import * root=Tk() v=StringVar() #Listbox与变量绑定' l ...

  9. Python爬虫实战八之利用Selenium抓取淘宝匿名旺旺

    更新 其实本文的初衷是为了获取淘宝的非匿名旺旺,在淘宝详情页的最下方有相关评论,含有非匿名旺旺号,快一年了淘宝都没有修复这个. 可就在今天,淘宝把所有的账号设置成了匿名显示,SO,获取非匿名旺旺号已经 ...

  10. python Tkinter之Button

    Button小部件是一个标准的Tkinter的部件,用于实现各种按钮.按钮可以包含文本或图像,您可以调用Python函数或方法用于每个按钮. Tkinter的按钮被按下时,会自动调用该函数或方法. 该 ...

随机推荐

  1. 当开源项目 Issue 遇到了 DevChat

    目录 1. 概述 2. Bug 分析与复现 3. Bug 定位与修复 4. 代码测试 5. 文档更新 6. 提交 Commit 7. 总结 1. 概述 没错,又有人给 GoPool 项目提 issue ...

  2. 文心一言 VS 讯飞星火 VS chatgpt (95)-- 算法导论9.2 4题

    四.用go语言,假设用RANDOMIZED-SELECT 去选择数组 A=(3,2,9,0,7,5,4,8,6,1)的最小元素,给出能够导致 RANDOMIZED-SELECT最坏情况发生的一个划分序 ...

  3. 多租户基于Springboot+MybatisPlus实现使用一个数据库一个表 使用字段进行数据隔离

    多租户实现方式 多租户在数据存储上主要存在三种方案,分别是: 1. 独立数据库 即一个租户一个数据库,这种方案的用户数据隔离级别最高,安全性最好,但成本较高. 优点:为不同的租户提供独立的数据库,有助 ...

  4. 算法——AcWing算法提高课中代码和题解

    文章目录 第一章 动态规划 (完成情况:64/68) 数字三角形模型 最长上升子序列模型 背包模型 状态机模型 状态压缩DP 区间DP 树形DP 数位DP 单调队列优化DP 斜率优化DP 第二章 搜索 ...

  5. Semantic Kernel .NET SDK 的 v1.0.0 Beta1 发布

    介绍 Semantic Kernel (SK) 是一个开源的将大型语言模型(LLM)与流行的编程语言相结合的SDK,Microsoft将Semantic Kernel(简称SK)称为轻量级SDK,结合 ...

  6. CF B. Gardener and the Array

    B. Gardener and the Array 思路:只要找到一个c他的每一位均在除了它的集合中出现过即可 这题T了2发,用来multiset,注意multiset大的时间复杂度是O(K + lo ...

  7. 一些 trick 和思考收获

    2023.1.7 P1117 优秀的拆分 对于一眼看上去只能直接求解的题可以设置一些节点变为求每个节点的贡献 *2023 7.24 补充:这个 trick 也被称为设置关键点,通常用于区间长度固定或是 ...

  8. QT(5)-QHeaderView

    @ 目录 1 说明 2 函数 2.1 级联调整大小 2.2 默认对齐方式 2.3 count() 2.4 表头默认单元格大小 2.5 hiddenSectionCount() 2.6 分区显示和隐藏 ...

  9. IT运营与DevOps:有何不同?

    IT 运营和 DevOps 满足许多现代企业密切相关的需求.然而,尽管这两种角色之间有许多相似之处,但也有重要的区别,将 IT 运营与 DevOps 混为一谈是错误的. 本文通过解释每种类型的角色是做 ...

  10. 使用 TortoiseGit 在两个项目之间共享代码(cherry-pick)

    需求:项目 A 需要新增项目 B 的部分代码,要求不变更 commit message 信息 做法 项目 A 新增上游 Remote,Remote URL 为 项目 B 的 URL 新增方式:依次点击 ...