0Percent 发表于 2023-1-22 12:58:31

有会python tkinter的坛友吗

RT
请教布局问题
+Q 1471198324

0Percent 发表于 2023-1-22 13:04:17

程序中全用的是grid布局 并无报错 添加了以下代码:
f = Figure(figsize=(5, 4), dpi=100)
a = f.add_subplot(111)# 添加子图:1行1列第1个

# 生成用于绘sin图的数据
x = np.arange(0, 3, 0.01)
y = np.sin(2 * np.pi * x)

# 在前面得到的子图上绘图
a.plot(x, y)

# 将绘制的图形显示到tkinter:创建属于main的canvas画布,并将图f置于画布上
canvas = FigureCanvasTkAgg(f, master=main)
canvas.draw()# 注意show方法已经过时了,这里改用draw
canvas.get_tk_widget().pack(side=tkinter.TOP,# 上对齐
                            fill=tkinter.BOTH,# 填充方式
                            expand=tkinter.YES)# 随窗口大小调整而调整

# matplotlib的导航工具栏显示上来(默认是不会显示它的)
toolbar = NavigationToolbar2Tk(canvas, main)
toolbar.update()
canvas._tkcanvas.pack(side=tkinter.TOP,# get_tk_widget()得到的就是_tkcanvas
                      fill=tkinter.BOTH,
                      expand=tkinter.YES)






并修改为:
f = Figure(figsize=(4, 3), dpi=100)
a = f.add_subplot(111)# 添加子图:1行1列第1个

# 生成用于绘sin图的数据
x = np.arange(0, 3, 0.01)
y = np.sin(2 * np.pi * x)

# 在前面得到的子图上绘图
a.plot(x, y)

# 将绘制的图形显示到tkinter:创建属于main的canvas画布,并将图f置于画布上
canvas = FigureCanvasTkAgg(f, master=main)
canvas.draw()# 注意show方法已经过时了,这里改用draw
canvas.get_tk_widget().grid(column=4, row=1, rowspan=9)

# matplotlib的导航工具栏显示上来(默认是不会显示它的)
toolbar = NavigationToolbar2Tk(canvas, main)
toolbar.update()
canvas._tkcanvas.grid(column=4, row=1, rowspan=9)

报错:_tkinter.TclError: cannot use geometry manager pack inside . which already has slaves managed by grid
简单来说:不能同时使用park() grid()两种布局

qwq 发表于 2023-1-22 14:22:52

Ace_qingfeng 发表于 2023-1-22 13:04
程序中全用的是grid布局 并无报错 添加了以下代码:
f = Figure(figsize=(5, 4), dpi=100)
a = f.add_subpl ...

把全部pack换长grid试试https://cdn.jsdelivr.net/gh/master-of-forums/master-of-forums/public/images/patch.gif

jyssysz 发表于 2023-1-22 20:15:55

建议楼主到专业的论坛看看吧。

SunValley 发表于 2023-1-27 14:07:32

@爱电脑的昕宇 tkinter大神
其实除了小工具,真正的程序我不推荐tk,推荐qt

0Percent 发表于 2023-1-27 14:16:23

SunValley 发表于 2023-1-27 14:07
@爱电脑的昕宇 tkinter大神
其实除了小工具,真正的程序我不推荐tk,推荐qt

主要我一开始就用tk
没接触过别的
已经解决了

爱电脑的昕宇 发表于 2023-1-27 19:26:51

SunValley 发表于 2023-1-27 14:07
@爱电脑的昕宇 tkinter大神
其实除了小工具,真正的程序我不推荐tk,推荐qt

确实不少人都说qt更丰富,但我为了简单选了tk
页: [1]
查看完整版本: 有会python tkinter的坛友吗