прокрутка python tkinter и проблемы с виджетами

Я пытаюсь получить два текстовых поля, каждый из которых имеет полосы прокрутки. Однако, когда я пытаюсь это сделать:

from Tkinter import * root = Tk() s_start = Scrollbar(root) t_start = Text(root, width=50, height=10) t_start.focus_set() s_start.pack(side=RIGHT, fill=Y) t_start.pack(side=LEFT, fill=Y) s_start.config(command=t_start.yview) t_start.config(yscrollcommand=s_start.set) s_end = Scrollbar(root) t_end = Text(root, width=50, height=10) t_end.focus_set() s_end.pack(side=RIGHT, fill=Y) t_end.pack(side=LEFT, fill=Y) s_end.config(command=t_end.yview) t_end.config(yscrollcommand=s_end.set) root.mainloop() 

Бывает:

введите описание изображения здесь

В случае, если это неясно, это два отдельных текстовых поля с правильным текстовым полем, функционально связанным с внутренней полосой прокрутки, а левое текстовое поле функционально связано с внешней полосой прокрутки.

One Solution collect form web for “прокрутка python tkinter и проблемы с виджетами”

Хитрость заключается в использовании фреймов и добавлении полос прокрутки к фреймам вместо Root.

 from Tkinter import * root = Tk() left = Frame(root) right = Frame(root) t_start = Text(left, width=20) t_start.pack(side=LEFT, fill=Y) s_start = Scrollbar(left) s_start.pack(side=RIGHT, fill=Y) s_start.config(command=t_start.yview) t_start.config(yscrollcommand=s_start.set) t_end = Text(right, width=20) t_end.pack(side=LEFT, fill=Y) s_end = Scrollbar(right) s_end.pack(side=RIGHT, fill=Y) s_end.config(command=t_end.yview) t_end.config(yscrollcommand=s_end.set) left.pack(side=LEFT, fill=Y) right.pack(side=RIGHT, fill=Y) root.geometry("500x200") root.mainloop() 

Два текста TkInter с полосами прокрутки

  • Текстовое поле, не отображаемое в графическом интерфейсе
  • Главный список всех событий Tkinter?
  • Python - несколько кадров с менеджером гридов
  • Отображать вывод в реальном времени подпроцесса в виджет tkinter
  • Подклассификация Tkinter для создания пользовательского виджета
  • Создание таймера обратного отсчета с Python и Tkinter?
  • Как удалить объект create_text в холсте?
  • задайте текст записи с помощью кнопки tkinter
  • Python - лучший язык программирования в мире.