小编Seb*_*man的帖子

tkinter类中的title()方法和wm_title()方法有什么区别?

我正在使用Python 2.7,我想知道title()方法和Tkinter类的wm_title()方法之间是否存在差异.以下代码:

import Tkinter as tk

root = tk.Tk()
root.title("My App")
root.mainloop()
Run Code Online (Sandbox Code Playgroud)

import Tkinter as tk

root = tk.Tk()
root.wm_title("My App")
root.mainloop()
Run Code Online (Sandbox Code Playgroud)

完成同样的事情.是否有隐藏的事情发生了?

python tkinter python-2.7

4
推荐指数
1
解决办法
2766
查看次数

我如何在 tk.Canvas 上定位形状和文本,以免它们被切断?

我正在使用 Tkinter 的 Canvas 为我的 GUI 创建简单的图形。我注意到我想将我的形状和文本放在画布的角落,但它们最终被部分隐藏。对于文本,我看到anchor文档建议设置一个选项NW,例如,如果我想将文本放在左上角,但即使如此,我也只看到文本开头的一点点被剪切离开。这是我的代码:

import Tkinter as tk

root = tk.Tk()
root.geometry("300x300")
c = tk.Canvas(root, bg="green", width=300, height=300)
c.pack(fill="both", side="right", expand=True)
c.create_text(0,0,text="Hello world!", anchor="nw")

root.mainloop()
Run Code Online (Sandbox Code Playgroud)

我知道我可以调整文本开始位置的坐标,并通过反复试验找出哪个给出最好的结果,但我想知道是否有更聪明的方法来做到这一点。

当我尝试创建形状(例如圆形)时,我注意到类似的事情:

import Tkinter as tk

root = tk.Tk()
root.geometry("300x300")
c = tk.Canvas(root, bg="green", width=300, height=300)
c.pack(fill="both", side="right",expand=True)
c.create_oval(0,0,300,300, fill="gray")

root.mainloop()
Run Code Online (Sandbox Code Playgroud)

对于圆,最靠近边缘的圆部分被切除。如果我拉伸并拖动窗口变大,我可以看到圆圈的最右侧和最底部,因此它们正在被绘制。我也没有看到类似于anchor圆圈的选项。

我注意到我的画布周围、画布和窗户之间的空白空间最小。我将包装选项设置为对所有面进行填充,并在有额外空间时进行扩展。我想知道这是否是问题所在。

python tkinter python-2.7 tkinter-canvas

3
推荐指数
1
解决办法
1563
查看次数

标签 统计

python ×2

python-2.7 ×2

tkinter ×2

tkinter-canvas ×1