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. Vue用v-bind给标签属性赋值 src, href...

    给属性渲染数据不能使用 {{name}} 标记, 请使用 v-bind:属性名称="name" name是json数据键值对中的键名, 请配合下面JS代码片食用 HTML < ...

  2. 2017-D

    2017-D 数据库部分 使用Windows 身份验证登录SQL Server ,建立数据库test0322,文件日志保存到一个专门的文件夹 建表 备份数据库,选定所创建数据库,右键-任务-备份-选择 ...

  3. SQL Server 使用C#窗体与数据库连接,制作数据库查看器

    SQL Server 使用C#窗体与数据库连接,制作数据库查看器 本文中心:讨论C#对SQL Server 的增删改查,使用Treeview制作数据库查看器. SSMS部分:确保SQL Server ...

  4. Solution -「HNOI 2010」城市建设

    Description Link. 修改边权的动态 MST. Solution 讲清楚点. 修改边权的 MST,考虑对时间分治.设我们当前操作的操作区间是 \([l,r]\),直接暴力找 MST 是不 ...

  5. Solution Set -「ABC 183」

    本来十分抗拒,但 GM 强制. 「ABC 183A」ReLU Link. 略. #include<cstdio> int main() { long long n; scanf(" ...

  6. Java 21的StringBuilder和StringBuffer新增了一个repeat方法

    发现Java 21的StringBuilder和StringBuffer中多了repeat方法: /** * @throws IllegalArgumentException {@inheritDoc ...

  7. Springboot+Mybatisplus+ClickHouse集成

    核心依赖引入 <dependency> <groupId>ru.yandex.clickhouse</groupId> <artifactId>clic ...

  8. 手动实现Transformer

      Transformer和BERT可谓是LLM的基础模型,彻底搞懂极其必要.Transformer最初设想是作为文本翻译模型使用的,而BERT模型构建使用了Transformer的部分组件,如果理解 ...

  9. 【好玩】如何在github主页放一条贪吃蛇

    前言 缘由 github放小蛇,就问你烧不烧 起因看到大佬github上有一条贪吃蛇扭来扭去,觉得好玩,遂给大家分享一下本狗的玩蛇历程 成果初展 贪吃蛇 访问地址 https://github.com ...

  10. 基于Electron27+Vite4+React18搭建桌面端项目|electron多开窗口实践

    前段时间有分享一篇electron25+vite4搭建跨桌面端vue3应用实践.今天带来最新捣鼓的electron27+react18创建跨端程序.electron多开窗体(模拟QQ登录窗口切换主窗口 ...