Несоответствующая высота/ширина менеджера сетки TkinterPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Несоответствующая высота/ширина менеджера сетки Tkinter

Сообщение Anonymous »

У меня проблема с согласованностью менеджера сетки tkinter.
Я указал конфигурацию столбца, поэтому в левой части указано 6, затем один столбец имеет значение 1 в качестве разделителя, а затем с правой стороны (клавиатура) ширина равна 3.
Насколько я понимаю, левая сторона должна быть в два раза больше правой. А на экране нет. У хатов похожая проблема. Для всех строк установлено значение rowconfigure=1, но на экране они имеют разную высоту.
Что я делаю неправильно?
Минимальная часть моей программы, чтобы показать проблему:

Код: Выделить всё

#!/usr/bin/env python3
# -*- coding: utf8 -*-

from tkinter import *

#***************************************************************************************************
root = Tk()
root.geometry("1024x600")

tab3=Frame(root,relief=SUNKEN, bd=5 )
tab3.pack(fill=BOTH, expand=True)

#specify column widths
Colwidths=[6,                       6,                      6,                      1,          3,          3,      3]
gui1=[
[["Double\nline txt",1,1],      ["Double\nline txt",1,1],   ["Double\nline txt",1,1],   ["",1,1],   ["1",1,1],  ["2",1,1],  ["3",1,1]],
[["145.0",1,1],                 ["133.7",1,1],              ["133.1",1,1],              ["",1,1],   ["4",1,1],  ["5",1,1],  ["6",1,1]],
[["Double\nline txt",1,1],      ["TwoCel\ndblLine",1,2],    ["TwoCel\ndblLine",1,2],    ["",1,1],   ["7",1,1],  ["8",1,1],  ["9",1,1]],
[["20.5",1,1],                  ["",1,1],                   ["",1,1],                   ["",1,1],   ["X",1,1],  ["0",1,1],  ["OK️",1,1]]
]

for i,v in enumerate(Colwidths): tab3.columnconfigure(i, weight=v)

for y,line in enumerate(gui1):
tab3.rowconfigure(y, weight=1)  #all rows are same height
for x, (txt,cs,rs) in enumerate(line):
if txt!="":
itm=Label(tab3,text=txt, bd=1, relief=SUNKEN, font=("Arial", 30, "bold"),bg='khaki')
itm.grid(row=y,column=x, columnspan=cs,rowspan=rs, sticky=NSEW)

root.mainloop()
и плохой результат:
Изображение
< /p>
Я подумал, что шрифт слишком большой и не помещается в ячейку. Поэтому я удалил стикер, попробовал еще раз и получил вот это:
Изображение

чтобы вокруг каждого элемента было видно пространство, поэтому с размером не должно быть проблем.

Подробнее здесь: https://stackoverflow.com/questions/789 ... consistent
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Несоответствующая ширина, вызванная добавлением элементов в FlexBoxLayoutManager.
    Anonymous » » в форуме Android
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous
  • Обработка экземпляров контекстного менеджера внутри другого менеджера контекста
    Anonymous » » в форуме Python
    0 Ответы
    34 Просмотры
    Последнее сообщение Anonymous
  • Статическая высота таблицы, динамическая высота строк и минимальная высота
    Anonymous » » в форуме CSS
    0 Ответы
    145 Просмотры
    Последнее сообщение Anonymous
  • Статическая высота таблицы, динамическая высота строк и минимальная высота
    Anonymous » » в форуме CSS
    0 Ответы
    92 Просмотры
    Последнее сообщение Anonymous
  • Статическая высота таблицы, динамическая высота строк и минимальная высота
    Anonymous » » в форуме CSS
    0 Ответы
    62 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»