Python_Tkinter_简介

简介

  • tkinter是python自带的GUI库,是对图形库TK的封装
  • tkinter是一个跨平台的GUI库,开发的程序可以在win,linux或者mac下运行

mainloop含义解析

很简单。你把鼠标一个按上会变成手型。或者你在知乎回答问题的文本框里输入文字。甚至你看到的电脑屏幕内容。看上去是动态的。其实和动画电影原理差不多。

现在你鼠标的移动,键盘的按键。都是实实在在输入。这里我们叫做事件。譬如有鼠标移动事件,单击事件,F5按下的事件。

以回答问题 按钮<发布回答>左侧的匿名勾选框为例。你单击一次,就绿色小勾表示选中。再单击就去掉了小勾。现在你这样想。实际上有两幅图(有勾和无勾的)。你单击鼠标移动鼠标就触发了事件,会把你鼠标的坐标和单击这个行为捕获。那假设你单击了,鼠标坐标又在那个框框区域内,我们就把一张图用另外一张图代替,同时后台表示是否匿名的某个变量取反。

rootroot.pack()之间,无非就是设计你的部件的类型,尺寸,样式,位置,然后绑定一个事件。

mainloop就进入到事件(消息)循环。一旦检测到事件,就刷新组件。譬如你输入一个字符,就要立即在光标那个位置显示出来(前提是你选中了文本框,也就是鼠标在文本框这个图案的范围内单击过)。又譬如你点了首页这个按钮(就是在这个图形的区域附近单击)那么就要清除你浏览器里的全部部件,然后重新绘制(按照主页设计的布局和内容)。

再给你打个比方。你设计的程序中间有个按钮,你设计的时候就要把一个按钮放到中间去。这个按钮有一个属性(假设和变量x关联,x表示按钮上文字的颜色,如果是1就黑色,0就灰色)。你按一下按钮,文字颜色就会切换。rootroot.pack()你就相当于在那里放按钮(其实按钮就是多幅图,某一时刻显示其中一张),具体颜色看x取值。现在到了mainloop。一旦有事件,就又在那里放按钮(不妨直接覆盖原来的图)。所以在那个位置单击鼠标才是触发某个你想要的程序行为的要素,那个按钮的刷新,不过是其中一项程序行为。有没有按钮你都可以点击那个区域触发。但是除了设计者,谁知道呢?无法是视觉效果罢了。

PS:如果你知道连环画,你可以理解为,每个部件都是连环画。rootroot.pack()就是你设计连环画。mainloop就是去翻它!实际上不是有很多程序有一个选项就是 动画效果么,关闭可以减少资源消耗。无非就是连环画的页数多。快速翻阅就有动感。如果只有两页,看上去很唐突而已。

pps:前面也说了,你看到电脑屏幕也是如此,是不停在刷新的。一般是50-60hz每秒。游戏里不有一个fps么,桢率 就是画面的刷新频率,太慢不就会卡顿么(和网络卡不是一回事)。然后屏幕还有局部刷新的技术,不一定每次都刷新整块屏幕。设计的程序也是。你可以所有组件每次事件都重新画。也可以只是画你需要的部分。

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 这个错误通常是由于缺少 Tkinter 模块导致的。TkinterPython 的标准 GUI 库,如果你的 Python 安装中没有包含它,就会出现这个错误。你可以尝试重新安装 Python,并确保在安装过程中选择了包含 Tkinter 的选项。如果你已经安装了 Python,可以尝试使用 pip 安装 Tkinter 模块,命令为:pip install tkinter。如果你使用的是 Python 2.x 版本,Tkinter 模块名称为 Tkinter,而不是 tkinter。 ### 回答2: "No module named _tkinter" 这个错误通常出现在Python中使用Tkinter模块时。TkinterPython的标准GUI库,用于创建窗口、按钮、标签等等。如果你在Python中运行代码时收到这个错误,可能是因为你的系统中缺少Tkinter模块。 首先,你需要确定你是在哪个操作系统上运行PythonTkinter模块在不同的操作系统上的安装方法可能有所不同。 如果你使用的是Windows操作系统,那么通常情况下,Python的安装包已经包含了Tkinter模块。你可以尝试重新安装Python,确保在安装过程中选择安装Tkinter模块。 如果你使用的是Linux操作系统,你可能需要手动安装Tkinter模块。你可以使用终端命令来安装Tkinter模块,具体命令可能因所使用的Linux发行版而有所不同。例如,对于Debian或Ubuntu发行版,你可以使用如下命令来安装Tkinter模块: ``` sudo apt-get install python3-tk ``` 如果你使用的是Mac操作系统,那么Python一般会自带Tkinter模块。如果你安装了其他版本的Python,你可能需要手动安装Tkinter模块。你可以使用命令行工具并输入以下命令来安装: ``` pip install tk ``` 安装完成后,你可以尝试运行你的Python代码,看看是否还会出现"No module named _tkinter"的错误。 总结起来,解决"No module named _tkinter"的方法是确保你的系统中安装了Tkinter模块。具体的安装方法可能因操作系统而异。 ### 回答3: "No module named _tkinter"是一个Python错误信息,通常在尝试导入_tkinter模块时出现。_tkinter模块是Python标准库中用于与Tk GUI库进行交互的模块之一。 出现此错误的原因可能是由于Python解释器缺少_tkinter模块。在某些情况下,_tkinter模块未正确安装,或者Python解释器不支持与_tkinter模块的交互。 解决此错误可以尝试以下方法: 1. 安装_tkinter模块:尝试重新安装Python并确保正确地包含了_tkinter模块。对于不同的操作系统,可以使用适当的包管理器来安装或升级_tkinter模块。 2. 检查Python版本:确保使用的Python版本与安装的_tkinter模块兼容。某些Python版本可能不支持_tkinter模块或可能需要额外的配置。 3. 检查操作系统依赖:在某些操作系统上,_tkinter模块可能需要一些额外的依赖库才能正常工作。确保这些依赖库已正确安装。 4. 使用其他GUI库:如果无法解决该错误,可以尝试使用其他GUI库,例如PyQt或wxPython,来代替_tkinter模块。 从根本上说,这个错误可能是由于缺少_tkinter模块或与之相关的配置问题导致的。通过采取上述方法之一,您应该能够解决此错误并成功导入_tkinter模块。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值