python tk mainloop原理_理解Tkinter mainloop()的逻辑以及为什么变量没有重新分配它们的原始值?...
据我所知,window.mainloop()不断重复GUI代码,以便窗口及其小部件保持在屏幕上。因此,为什么一个变量(如canvastext)可以被更新并保持更新?难道window.mainloop()的逻辑会覆盖canvastext,使其再次具有文本值“Hi”,而不是新的spinbox值吗?
可能我完全误解了window.mainloop()的作用,但是如果它确实使程序在代码中不断循环,那么为什么不重新分配变量的原始值呢?在from tkinter import *
x = 10
y = 10
a = 100
b = 100
def hello():
#print spin value
print ("Spin Value:")
number = v.get()
print(number)
#update text with variable value
txt = v.get()
global canvastext
canvas1.delete(canvastext)
canvas1.update()
canvastext = canvas1.create_text(50, 50, text = txt)
window = Tk()
window.geometry("500x500")
#canvas and drawing
canvas1=Canvas(window, height = 200, width = 400)
canvas1.grid(row=0, column=0, sticky=W)
coord = [x, y, a, b]
rect = canvas1.create_rectangle(*coord, outline="#fb0", fill="#fb0")
canvastext = canvas1.create_text(50, 50, text ="Hi")
# create a toplevel menu
menubar = Menu(window)
firstmenu = Menu(menubar, tearoff=0)
firstmenu.add_command(label="Hello!", command=hello)
firstmenu.add_command(label="Quit!", command=window.destroy)
menubar.add_cascade(label="Menu1", menu=firstmenu)
secondmenu = Menu(menubar, tearoff=0)
secondmenu.add_command(label="Hi!", command=hello)
secondmenu.add_command(label="Quit!", command=window.destroy)
menubar.add_cascade(label="Menu2", menu=secondmenu)
window.config(menu=menubar)
#spinboxes and capturing value
v=IntVar()
spin = Spinbox(window, textvariable=v, from_=1, to = 10)
spin.grid(row=1, column = 0, sticky= W)
window.mainloop()
python tk mainloop原理_理解Tkinter mainloop()的逻辑以及为什么变量没有重新分配它们的原始值?...相关推荐
- python装饰器原理-深刻理解python装饰器
我们要完全理解python装饰器,不是很容易,主要归结有如下困难: 1. 关于函数"变量"(或"变量"函数)的理解 2. 关于高阶函数的理解 3. 关于嵌套函数 ...
- python生成器yield原理_生成器yield关键字详解
鉴于yield关键字的原理大家理解的都不是很深刻,今天我们主要就这一课题进行探讨. 生成器可以用什么方式得到? 方法一: 利用推导式的方式得到生成器# 列表推导式 list1 = [i for i i ...
- python画爱心原理_如何理解python一行代码实现一个爱心字符画?
前言 python中有个很酷的效果,一行代码实现一个爱心字符,虽说是一行代码,但是理解起来还是比较难的,括号太多,并且使用了python的一些快捷小技巧.比如三元表达式,列表生成式,字符串拼接以及一个 ...
- python tk label 多字体_Python3 tkinter基础 Label compound 图片上显示文字 fg字体颜色 font字体大小...
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda : 4.5.11 typesetting : Markdown ...
- python打印日历代码_带tkinter的日历(打印所选日期)
为了用tkinter创建日历,我在网上获得了以下代码:""" Simple calendar using ttk Treeview together with calen ...
- python制作简单动画_用Tkinter Python制作简单动画
我用Tkinter搜索了一个简单的动画代码,但是我发现了非常不同的例子,我无法理解正确的方法来编写动画. 这里我的工作代码显示一个简单的移动圆:import tkinter as tk import ...
- python 小说下载工具_使用tkinter打造一个小说下载器,想看什么小说,就下什么...
前言 今天教大家用户Python GUI编程--tkinter 打造一个小说下载器,想看什么小说,就下载什么小说 先看下效果图 Tkinter 是使用 python 进行窗口视窗设计的模块.Tkint ...
- python输出文本框_让tkinter在文本框中显示输出
我试图创建一个小的GUI,当用户在文本框中输入一个数字时,它显示(作为标签)是否是素数.让tkinter在文本框中显示输出 我目前"工作"的代码(因为没有错误显示),但标签不会改变 ...
- python实现选择文件_用tkinter 实现从文件夹选择文件并显示
如何使用tkinter打开一个excel表格并读取数据,并显示出来? 1.使用filedialog,打开文件夹并选择文件 代码如下: #选择文件 def openfile(): sfname = fi ...
最新文章
- zeros--创建零矩阵
- java aar 文件,将本地.aar文件添加到我的gradle构建中
- 最小表达式_C# 09.找最大和最小的数字
- 在未启动程序情况 点击视图设计器 弹出未将对象引用窗体的解决方案
- javascript --- 文件上传即时预览 闭包实现多图片即时预览
- redis 缓存 key常量命名规则
- 学习echarts需要先学习java 吗_Echarts和Echarts-java类库简单使用方法
- el如何获取复选框的值_element ui 表格提交时获取所有选中的checkbox的数据
- 不招聘数据科学家的 7 个理由!
- windows电脑上一些软件如画图/记事本变成了英文
- pve 不订阅更新_魔兽世界PVE史:第二章 (四)国服那些年
- LiteFlowNet3:解决对应歧义以获得更准确的光流估计
- error: cannot lock ref 'refs/remotes/origin/master': unable to resolve reference 'refs/remotes/origi
- CCNA思科的一些基础知识
- 2021Java进阶学习资料!java自学宝典pdf下载
- Kafka时间轮学习总结
- 使用RestTemplate报301 Moved Permanently解决
- 微服务项目框架及多模块开发
- mysql连接驱动_MySQL8.0数据库连接驱动问题
- NLP 的 不可能三角?
热门文章
- 追本溯源:Oracle 只读表空间的探索实践
- 【警惕】大量未修复WebLogic WSAT组件RCE漏洞的主机被挖矿程序攻击
- 云小课|云小课带你快速掌握云数据迁移CDM
- 互联网短平快下,DevCloud如何支撑软件开发的“转型”?
- 实操案例:字符串哈希表操作
- 【华为云技术分享】CentOS7.4系统下,手动安装MySQL5.7的方法
- 区块链学习笔记:D02 区块链的技术发展历史和趋势
- 补习系列(2)-springboot mime类型处理
- AOS编排语言系列教程(五):创建安全组SecurityGroup
- 红橙Darren视频笔记 网络请求优化方案 OOP面向对象 6大基本原则