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. 解决Eclipse中启动Tomcat报unable to start within 45 seconds问题

    启动项目的时候报Server Tomcat v8.0 Server at localhost was unable to start within 45 seconds. If the server ...

  2. 图解 LeetCode 算法汇总——双指针

    双指针算法是一种比较常用于搜索链表或数组相关的问题,很多算法的基本的解题思路就是使用暴力搜索法.而双指针是对暴力搜索的一种优化,通过双指针可以减少数据的遍历次数.通常双指针是有两个指针,叫做 ligh ...

  3. 「codeforces - 542D」Superhero's Job

    link. 容易发现,如果将 \(x\) 写作 \(\displaystyle \prod_{i = 1}^k p_i^{\alpha_i}\) 的形式,\(\displaystyle J(x) = ...

  4. 全局重写Element UI中的Message消息提示显示时长

    需求:Message消息提示显示时长过长 环境:"vue": "2.6.12"."element-ui": "^2.15.6&qu ...

  5. 深入理解RocketMQ 广播消费

    这篇文章我们聊聊广播消费,因为广播消费在某些场景下真的有奇效.笔者会从基础概念.实现机制.实战案例.注意事项四个方面一一展开,希望能帮助到大家. 1 基础概念 RocketMQ 支持两种消息模式:集群 ...

  6. Factors 分解质因数

    package com.yourself.yours; import java.util.Scanner; /** ****************************************** ...

  7. 关于C++拷贝控制

    通常来说,对于类内动态分配资源的类需要进行拷贝控制:要在拷贝构造函数.拷贝赋值运算符.析构函数中实现安全高效的操作来管理内存.但是资源管理并不是一个类需要定义自己的拷贝控制成员的唯一原因.C++ Pr ...

  8. linux内核离线升级步骤详解【亲测可用】

    由于种种原因,linux的内核版本需要升级,但由于生产原因往往不能在线升级,在此记录笔者本人昨晚的的离线升级步骤,亲测可用. 我们知道,红帽和CentOS同源同宗,内核升级步骤也是一样的. 目录 ■ ...

  9. YbtOJ 「图论」第3章 最短路径

    例题1.单源最短路径 dij 板子.(w36557658 原版 dij 代码! code #include<cmath> #include<queue> #include< ...

  10. 全面掌握胶囊网络:从基础理论到PyTorch实战

    本文全面深入地探讨了胶囊网络(Capsule Networks)的原理.构建块.数学模型以及在PyTorch中的实现.通过本文,读者不仅能够理解胶囊网络的基础概念和高级数学原理,还能掌握其在实际问题中 ...