Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » GUI
  • » Поменять местами button в созданном widget tkinter [RSS Feed]

#1 Янв. 6, 2014 16:26:15

tisul
Зарегистрирован: 2014-01-06
Сообщения: 25
Репутация: +  0  -
Профиль   Отправить e-mail  

Поменять местами button в созданном widget tkinter

Задача на форме создано три кнопки необходимо нажатием третей кнопки поменять порядок следования первых двух! Буду благодарен за помощь.

Офлайн

#2 Янв. 6, 2014 17:20:07

4kpt_II
От: Харьков
Зарегистрирован: 2013-10-24
Сообщения: 999
Репутация: +  58  -
Профиль   Отправить e-mail  

Поменять местами button в созданном widget tkinter

Не понял вообще ничего…
Что значит: “порядок следования”?
Имеется ввиду их место положении на базовом виджете. Или меняются комманды, которые вызывают их нажатия? Хотя может, имеллось ввиду, что переход фокуса по табу меняется… Черт его знает. Напишите подробнее. Если можно, то так: было до нажатия > стало после нажатия.


Офлайн

#3 Янв. 7, 2014 06:38:58

tisul
Зарегистрирован: 2014-01-06
Сообщения: 25
Репутация: +  0  -
Профиль   Отправить e-mail  

Поменять местами button в созданном widget tkinter

Поменять команды, фокус с этим все понятно! Есть кнопка- объект №1 и кнопка -объект №2 на базовом
виджете размещаем объект - №1 и объект - №2 (pack(№1) pack(№2) слево на право нужно по нажатию третей кнопки поменять местами объект - №1 и объект- №2 т.е после нажатия идет объект - №2 а затем объект-№1 слево на право. Вчера пересмотрел все базовые классы и понимаю что без перепаковки не обойтись или я ошибаюсь. (я новичок пока в этом)

Офлайн

#4 Янв. 7, 2014 06:40:39

tisul
Зарегистрирован: 2014-01-06
Сообщения: 25
Репутация: +  0  -
Профиль   Отправить e-mail  

Поменять местами button в созданном widget tkinter

Что значит: “порядок следования”?
Имеется ввиду их место положении на базовом виджете
. - Да именно это

Отредактировано tisul (Янв. 7, 2014 06:41:06)

Офлайн

#5 Янв. 7, 2014 11:46:33

4kpt_II
От: Харьков
Зарегистрирован: 2013-10-24
Сообщения: 999
Репутация: +  58  -
Профиль   Отправить e-mail  

Поменять местами button в созданном widget tkinter

Самый простой - запаковать два виджета в рамку и потом перепаковывать.
Но можно еще по-другому. Написать общий обработчик нажатия.
При нажатии считывать надпись на кнопке или ее id и выполнять соответствующую команду (вызвать соответствующую функцию-обработчик). В этом случае нужно поменять местами только надписи на кнопках.

Будут вопросы - пишите.

Офлайн

#6 Янв. 9, 2014 07:30:14

tisul
Зарегистрирован: 2014-01-06
Сообщения: 25
Репутация: +  0  -
Профиль   Отправить e-mail  

Поменять местами button в созданном widget tkinter

Еще раз порылся и перечитал методы и нашел то, что нужно. КНОПКИ МОЖНО ПОМЕНЯТЬ МЕСТАМИ
bt1 = Button()
bt1.pack()
bt2 = Button()
bt2.pack()
на форме выводятся соответственно bt1 bt2
деламе следующее
bt2.pack(before=bt1)
на форме получаем уже bt2 bt1

За помощь все равно огромное спасибо!!!!


Вопрос закрыт!






Офлайн

#7 Янв. 9, 2014 14:47:39

4kpt_II
От: Харьков
Зарегистрирован: 2013-10-24
Сообщения: 999
Репутация: +  58  -
Профиль   Отправить e-mail  

Поменять местами button в созданном widget tkinter

Неверно!!! Этот подход будет работать только для менеджера pack. Для всех других менеджеров геометрии такой способ работать не будет. Я Вам написал два универсальных механизма, которые будут работать для любых методов, а именно .pack, .place, .grid.

Отредактировано 4kpt_II (Янв. 9, 2014 14:51:34)

Офлайн

#8 Янв. 9, 2014 17:12:36

tisul
Зарегистрирован: 2014-01-06
Сообщения: 25
Репутация: +  0  -
Профиль   Отправить e-mail  

Поменять местами button в созданном widget tkinter

Понятно! мой недочет что не указал способ размещения виджетов.

Отредактировано tisul (Янв. 9, 2014 17:13:16)

Офлайн

  • Начало
  • » GUI
  • » Поменять местами button в созданном widget tkinter[RSS Feed]

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version