cannot use geometry manager pack inside . which already has slaves managed by grid(无法在内部使用几何管理器包。它已经拥有由网格管理的从属对象)
本文介绍了无法在内部使用几何管理器包。它已经拥有由网格管理的从属对象的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想使用网格显示pdf,但它显示错误,无法在里面使用几何管理器包。它已经拥有由网格管理的从属服务器。from tkinter import *
from tkPDFViewer import tkPDFViewer as pdf
mys = Tk()
mys.title("Mystery Books")
mys.config(bg='white')
我从Dead函数内部的pack()更改为GRID(),但仍有一些东西无法更改为整体GRID。
def dead():
root = Toplevel()
root.geometry("550x750")
v1 = pdf.ShowPdf()
v2 = v1.pdf_view(root,pdf_location=r"C:\Users\mande\Desktop\Books\Mystery\Dead Until Dark.pdf")
v2.grid()
root.mainloop()
button_dead = Button(mys, text="Dead until Dark", font=30, padx=15, pady=15, height=2, width=12, command=dead,fg="black", bg="white", borderwidth=5)
button_dead.grid(row=1, column=0, padx=7, pady=7)
mys.mainloop()
推荐答案
这是tkPDFViewer
的错误。查看tkPDFViewer
:
class ShowPdf():
...
def pdf_view(self,master,width=1200,height=600,pdf_location="",bar=True,load="after"):
...
if bar==True and load=="after":
self.display_msg = Label(textvariable=percentage_load) # this will create the label in root window instead of its frame
self.display_msg.pack(pady=10) # this will raise exception if widgets in root window are using `grid()`
...
若要跳过错误,请在调用pdf_view(...)
时传递bar=False
或load=""
:
v2 = v1.pdf_view(root,
pdf_location=r"C:\Users\mande\Desktop\Books\Mystery\Dead Until Dark.pdf",
bar=False) # set bar=False
请注意,以上更改将禁用进度条。
这篇关于无法在内部使用几何管理器包。它已经拥有由网格管理的从属对象的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:无法在内部使用几何管理器包。它已经拥有由网格管理的从属对象
基础教程推荐
猜你喜欢
- Python kivy 入口点 inflateRest2 无法定位 libpng16-16.dll 2022-01-01
- 何时使用 os.name、sys.platform 或 platform.system? 2022-01-01
- 线程时出现 msgbox 错误,GUI 块 2022-01-01
- 筛选NumPy数组 2022-01-01
- 在 Python 中,如果我在一个“with"中返回.块,文件还会关闭吗? 2022-01-01
- 如何在海运重新绘制中自定义标题和y标签 2022-01-01
- 用于分类数据的跳跃记号标签 2022-01-01
- 使用PyInstaller后在Windows中打开可执行文件时出错 2022-01-01
- Dask.array.套用_沿_轴:由于额外的元素([1]),使用dask.array的每一行作为另一个函数的输入失败 2022-01-01
- 如何让 python 脚本监听来自另一个脚本的输入 2022-01-01