ткинтер в питоне. .pack работает, но .grid ничего не выдает - PullRequest
0 голосов
/ 01 сентября 2010

Этот код работает нормально и выдает контрольные кнопки в длинном длинном списке.

def createbutton(self,name):
    var = IntVar()
    account = name[0]
    chk = Checkbutton(self.root, text=account, variable=var)
    chk.pack(side = BOTTOM)
    self.states.append((name,var))

Проблема в том, что список кнопок настолько длинный, что он растягивается дальше, чем длина моего экрана, поэтому я хочуположить их в сетку, так что я могу иметь, возможно, 10 кнопок в столбце.Просто чтобы проверить возможность, я сделал это:

def createbutton(self,name):
    var = IntVar()
    account = name[0]
    chk = Checkbutton(self.root, text=account, variable=var)
    chk.grid(column=0)
    self.states.append((name,var))

И ничего не происходит, интерфейс tk не открывается, а программа просто ждет.Пожалуйста, помогите!

1 Ответ

1 голос
/ 01 сентября 2010

Возможно ли, что у вас есть другие виджеты, которые находятся в корневом окне, и они помещаются туда с помощью пакета?Если вы попытаетесь использовать pack и grid в одном и том же контейнере, ваше приложение может зайти в бесконечный цикл, поскольку каждый менеджер борется за контроль над контейнером.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...