Как сделать так, чтобы текстовые кнопки и текстовые метки имели одинаковую высоту в сетке? - PullRequest
0 голосов
/ 10 июня 2019

Я делаю очень простое приложение с графическим интерфейсом, используя Tkinter впервые.Проблема, с которой я столкнулся, заключается в том, что при использовании текстовых меток и текстовых кнопок рядом с помощью grid () высота кнопки превышает высоту метки, когда я хочу, чтобы они были одинаковыми.

I 'мы пытались изменить параметр высоты при создании надписей и кнопок, но несмотря на то, что размер шрифта был одинаковым для обоих, а высота для обоих определялась в «текстовых единицах», установка высоты = 1 для обоих приводит к двум разным высотам.Я также попытался изменить параметр pady кнопки, но это также не помогло решить проблему.

Вот код, который воспроизводит проблему:

import tkinter as tk
from tkinter import font

root = tk.Tk()

# making font larger for easier viewing 
default_font = tk.font.nametofont("TkDefaultFont")
default_font.configure(size = 44)

# make a text Label and text Button, both with height 1... results in 2 different heights
tk.Label(root, text="foo", bg = 'black', fg = 'white', relief = 'raised', height = 1).grid(row=0,column=0)
tk.Button(root, text="bar", bg = 'red', fg = 'black', relief = 'raised', height = 1).grid(row=0,column=1)

root.mainloop()

Любая помощь с этимбудет высоко ценится.

1 Ответ

0 голосов
/ 10 июня 2019

использовать параметр прикрепления в widget.grid( grid_options ).

закрепление

Что делать, если ячейка больше виджета.По умолчанию при использовании sticky = '' виджет центрируется в своей ячейке.sticky может быть конкатенацией строк из нуля или более из N, E, S, W, NE, NW, SE и SW, направления компаса, указывающие стороны и углы ячейки, к которой привязан виджет.

tk.Label(root, text="foo", bg = 'black', fg = 'white', relief = 'raised', height = 1).grid(row=0,column=0, sticky= W+E+N+S)

выход:

enter image description here

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