Как установить границу scrollText в tkinter?

Я новичок в ткинтере. Мой код нравится это,

import tkinter
from tkinter import scrolledtext

Win = tkinter.Tk()
Text = scrolledtext.ScrolledText(Win)
Text.pack(padx=10,pady=10)
Win.mainloop()

Как видите, у него есть только левая граница, верхняя граница. Однако у него нет правой границы и нижней границы.

Я смотрел это Как установить цвет границы определенных виджетов Tkinter? . И я пробовал highlightbackground=color, код такой

import tkinter
from tkinter import scrolledtext

Win = tkinter.Tk()
Text = scrolledtext.ScrolledText(Win)
Text.config(highlightbackground="black")
Text.pack(padx=10,pady=10)
Win.mainloop()

это тоже не сработало.

В этом документе:tkinter.scrolledtext — виджет прокручиваемого текста, я знаю что конструктор такой же, как у класса tkinter.Text. И я видел Текстовый виджет Tkinter, но у него не было конфига о границе tkinter.Text.

Что я должен делать?


person Kevin Mayo    schedule 17.01.2020    source источник
comment
Буквальный ответ на вопрос Как установить границу scrollText в tkinter? такой же, как и для любого другого виджета, используя параметры borderwidth и relief. Вы пробовали их использовать?   -  person Bryan Oakley    schedule 17.01.2020
comment
@BryanOakley да, хорошо. Я пытаюсь использовать relief.(Текстовый виджет Tkinter)[effbot. org/tkinterbook/text.htm].it имеет УПАВШИЕ, ПОДЪЕМНЫЕ, ПАЗОВЫЕ, КОНЕЧНЫЕ, ПЛОСКИЕ. Но все они не могут иметь границы во всех направлениях одновременно.   -  person Kevin Mayo    schedule 17.01.2020
comment
Правильно - чтобы получить утопленный или приподнятый рельеф, необходимо, чтобы верхний и левый края выглядели иначе, чем нижний и правый края.   -  person Bryan Oakley    schedule 17.01.2020


Ответы (1)


у него есть только левая граница, верхняя граница.

Поскольку конфиг виджета relief="sunken", можно попробовать relief="solid".

Так что это может решить вашу проблему

import tkinter
from tkinter import scrolledtext

Win = tkinter.Tk()
Text = scrolledtext.ScrolledText(Win,relief="solid")
Text.pack(padx=10,pady=10)
Win.mainloop()
person jizhihaoSAMA    schedule 17.01.2020
comment
.....Почему можно использовать relief="solid"? (Текстовый виджет Tkinter)[effbot. org/tkinterbook/text.htm], на этой странице об этом даже не упоминалось. - person Kevin Mayo; 17.01.2020
comment
@BryanOakley Это на этой странице, effbot.org/tkinterbook/text.htm - person Kevin Mayo; 17.01.2020
comment
Да, и, как я уже сказал, эта страница неверна. Это неофициальная документация. - person Bryan Oakley; 17.01.2020