Как получить односторонний pady / padx виджета tkinter? - PullRequest
0 голосов
/ 04 апреля 2020

Я пытаюсь перебрать виджеты tkinter скрипта и извлечь их значения pady вверх и вниз (те, которые назначены с widget_ex.grid(pady=(pad_up,pad_down))).

Начиная с widget_ex.grid(pady=(0,20),sticky="w", column=0) и widget_ex.grid(pady=20,sticky="w", column=0), я получаю одно значение pady 1, используя:

widget_ex.update()
print(widget_ex.cget('pady'))

Есть идеи о том, как вызвать одностороннее значение pady / padx?

1 Ответ

1 голос
/ 04 апреля 2020

В документ tkinter

grid_info () Возвращает словарь, содержащий текущие параметры ячейки для ячейки, используемой этим виджетом. Возвращает: словарь, содержащий параметры управления сеткой сетки.

В примере моего кода:

import tkinter as tk

root = tk.Tk()
a = tk.Button(root,text="getit")
a.grid(row=0,column=0,padx=10,pady=(10,20))
print(a.grid_info())

root.mainloop()

Результат:

{'in': <tkinter.Tk object .>, 'column': 0, 'row': 0, 'columnspan': 1, 'rowspan': 1, 'ipadx': 0, 'ipady': 0, 'padx': 10, 'pady': (10, 20), 'sticky': ''} # It is a dict.

Так что если вы хотите чтобы получить pady, вы должны использовать:

widget.grid_info()['pady']
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...