Есть ли способ изменить размер записи Combobox? - PullRequest
0 голосов
/ 14 декабря 2018

Я знаю, что есть много способов изменить шрифт выпадающего списка / списка, мой вопрос, как вы могли бы настроить поле ввода одновременно, часть обведена красным.Как сделать так, чтобы он соответствовал размеру ярлыка рядом с ним?Другими словами, как мне сделать стрелку раскрывающегося списка больше?

label = ttk.Label(frame, text='truck id: ', anchor=w, font=bigger_font)
c = ttk.Combobox(frame, textvariable=truckID, values=['1','2','3','4'])
c['state'] = 'readonly'
root.option_add('*TCombobox*Listbox.font', bigger_font)

enter image description here

1 Ответ

0 голосов
/ 14 декабря 2018

Combobox имеет атрибут width , который позволяет вам контролировать его размер.width соответствует количеству символов.Так, например, если вы знаете, что ваши записи в выпадающем списке являются однозначными числами, вы можете установить атрибут ширины, скажем, 1. Вот пример.

import tkinter as tk
import tkinter.ttk as ttk

root = tk.Tk()
tList = ttk.Combobox(root, values=[1, 2, 3, 4, 5], state="readonly", width=1)
tList.current(0)
tList.grid(row=0, column=1, padx=10, pady=10)
root.mainloop()

enter image description here

Теперь посмотрите, измените ли вы ширину на 2.

enter image description here

Это ровно вдвое меньше размера записи в выпадающем списке.

В принципе, если вы знаете, какой тип (длина) записей будет содержать ваш комбинированный список, вы можете контролировать его размер.

Если вы хотите, чтобы он был выше по высоте, манипулируйте его атрибутом font.

tList = ttk.Combobox(root, values=[1, 2, 3, 4, 5], state="readonly", width=2, font="Verdana 16 bold")

enter image description here

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