gpt4 book ai didi

python - 为什么添加按钮后调节 tk Canvas 大小的关键参数不起作用?

转载 作者:行者123 更新时间:2023-12-01 07:44:58 25 4
gpt4 key购买 nike

我试图构建一个足够大的窗口,其中包含一些小部件。因此,我通过了一些关键参数来调节 Canvas 的大小,并且它按预期工作。但是,当我在 Canvas 内添加按钮时,窗口恢复到原来的小尺寸(可能是默认尺寸)。

我在代码末尾测试了宽度和高度的值:print(window["width"]) 给出 700print(window["height"]) 给出 800

这进一步让我困惑,因为如果宽度和高度属性具有我输入的值,为什么添加按钮会阻止窗口展示这些属性?

import tkinter as tk

root=tk.Tk()

window=tk.Canvas(root,width=700,height=800)
window.pack()

button=tk.Button(window,text="test button") #(1)
button.pack()#(2)
# the Canvas shows the wanted size when (1) and (2)is deleted

root.mainloop()

最佳答案

widget 被打包或网格化时,

CanvasFrame 将缩小到所需的大小。但您可以通过 propagate 明确告诉它不要这样做:

window=tk.Canvas(root,width=700,height=800)
window.pack()
window.propagate(0)

或者,您可以在 Button 小部件上使用 place 方法:

button.place(relx=0.5,rely=0.5)

关于python - 为什么添加按钮后调节 tk Canvas 大小的关键参数不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56506712/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com