【问题标题】:Scrollbar with grid getting errorcannot use geometry manager pack inside网格出现错误的滚动条无法在内部使用几何管理器包
【发布时间】:2018-05-30 07:25:30
【问题描述】:

我是 Python 新手 放置滚动条屏幕时出错说

    Exception in Tkinter callback
    Traceback (most recent call last):
    File "C:\Users\JAG\AppData\Local\Programs\Python\Python35\lib\tkinter\__init__.py", line 1558, in __call__
        return self.func(*args)
    File "C:\bankatmPython\main.py", line 122, in log_in
        create_account_screen()
    File "C:\bankatmPython\main.py", line 387, in create_account_screen
        scrollbar.pack( side = RIGHT, fill = Y )
    File "C:\Users\JAG\AppData\Local\Programs\Python\Python35\lib\tkinter\__init__.py", line 1999, in pack_configure
        + self._options(cnf, kw))
    _tkinter.TclError: cannot use geometry manager pack inside . which already has slaves managed by grid

有人可以让我知道我在下面的代码中做了什么可疑的事情

import tkinter as tk
win = tk.Tk()

  scrollbar = Scrollbar(win)
scrollbar.pack( side = RIGHT, fill = Y )
mylist = Listbox(win, yscrollcommand = scrollbar.set ).grid(row=3)

【问题讨论】:

  • 这个错误似乎不言自明。在错误消息的上下文中,“。”意思是“根窗口”。您不能在将根窗口作为主窗口的小部件中同时使用 .grid.pack

标签: python python-3.x tkinter


【解决方案1】:
Thanks Bryan, Here is the solution


scrollbar = Scrollbar(win)
transactionText = Listbox(win, yscrollcommand = scrollbar.set )
transactionText.grid(row =0, column=0)
for line in range(100):
transactionText.insert(END, "This is line number " + str(line))
scrollbar.grid(sticky=E, row = 0, rowspan =10, column = 11, ipady = 1000)

【讨论】:

    猜你喜欢
    • 2014-06-28
    • 1970-01-01
    • 2020-06-10
    • 2017-03-27
    • 2012-10-11
    • 2014-01-31
    • 2021-09-01
    相关资源
    最近更新 更多