2016-08-05 4 views
0

Я пытаюсь создать графический интерфейс для скрипта python с использованием Tkinter и иметь рабочую полосу прокрутки. Однако положение «бара» не обновляется при прокрутке или перетаскивании панели. Я думаю, что соответствующая часть кода выглядит следующим образом:Как обновить позицию полосы прокрутки с помощью Tkinter

#Setup window with text and scrollbar  
root = Tk() 
scrollbar = Scrollbar(root) 
app = App(root) 
t = Text(root) 

#GRID manager layout 
t.grid(row = 0, column = 1, sticky=N+S+W, padx = 5, pady = 5) 
scrollbar.grid(row = 0, column = 2, sticky=N+S+W,) 

scrollbar.config(command = t.yview) 

Я попытался найти средства, чтобы исправить это, но не могу понять, что я делаю неправильно. Любая помощь могла бы быть полезна. Мои извинения, если я не включил достаточно кода, если вы хотите больше или увидеть весь скрипт (хотя это 100 строк), я был бы рад помочь.

Еще раз спасибо за ваше время.

ответ

2

Вы должны указать его на .yview холста, и поместить текст в холст

the_window = Tk() 

vscrollbar = Scrollbar(the_window) 
vscrollbar.grid(...) 

the_canvas = Canvas(
    the_window, 
    background = 'white', 
    yscrollcommand = vscrollbar.set 
) 
the_canvas.grid(...) 

vscrollbar.config(command=the_canvas.yview) 
+0

большое спасибо за Ваш ответ и ясный пример, Майк. –

Смежные вопросы