首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >更新到ActiveTcl 8.5.17意外行为

更新到ActiveTcl 8.5.17意外行为
EN

Stack Overflow用户
提问于 2015-03-10 06:16:02
回答 1查看 56关注 0票数 0

TOday我从ActiveTcl 8.5.9更新到ActiveTcl 8.5.17,以修复此bug。我使用的是mac,os x 10.7。我已经注意到在我的程序中破坏了一些东西。当我点击不相关的区域时,一些按钮会闪烁黑色的轮廓(这在更新之前是不会发生的)。最大的担忧是我的一些复选按钮没有显示!例如:

代码语言:javascript
复制
import tkinter as tk
t=tk.Tk()

c=tk.IntVar()
b=tk.Checkbutton(master=t,variable=c)
b.grid(column=0,row=1,sticky="nsew")

t.mainloop()

给出一个空窗口

然而,代码:

代码语言:javascript
复制
import tkinter as tk

t=tk.Tk()

c=tk.IntVar()
b=tk.Checkbutton(master=t,variable=c,text="bob")
b.grid(column=0,row=1,sticky="nsew")

t.mainloop()

编辑: Checkbutton仍然在那里,因为它对点击做出反应,但它只是向下不显示

给出了预期的结果。现在出现了奇怪的部分,将文本更改为"aaa“代码仍然不起作用。这与文本的长度有关吗?我试着添加填充,改变粘性,但没有任何帮助:(在其他情况下,它的行为甚至更奇怪。在8.5.17中有什么变化吗?还是我的版本只是关闭了?

EN

回答 1

Stack Overflow用户

发布于 2015-03-10 06:54:51

使用ttk小部件实现更多跨平台一致性。

代码语言:javascript
复制
import tkinter as tk
import tkinter.ttk  as ttk

tkk是一组比tk中提供的小部件更现代的小部件。

我猜tk会为GUI调用olds OS API,然后定制这些小部件。ttk调用GUI的最后一个本机默认API。这会在OS X上造成问题,因为Apple在发布新版本的OS时决定不优先考虑向后兼容性

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28952749

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档