Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 22, 2012 11:26:25

Nosaer
От:
Зарегистрирован: 2010-09-29
Сообщения: 14
Репутация: +  0  -
Профиль   Отправить e-mail  

Scrollbar в Text(Tkinter)

Подскажите пожалуйста, как вставить scrollbar в поле Text.
Пытался так, но Scrollbar не встает где нужно, а теснится в правом нижнем углу. Хотя текстовым полем он все таки управляет.

# -*- coding: utf-8 -*-
#!/usr/bin/python

from Tkinter import *
import hashlib
root = Tk()
root.title("Programm")
root.geometry('450x380+100+100')


def Hash(event):
print ""


label1 = Label(root, text=u'1')
label1.config(height=1, width=10)
label1.pack(expand=YES, fill=BOTH)

text1=Text(root,height=4,width=60,font='Arial 10',wrap=WORD)
text1.pack()

label2 = Label(root, text=u'2')
label2.config(height=1, width=10)
label2.pack(expand=YES, fill=BOTH)

text2=Text(root,height=4,width=60,font='Arial 10',wrap=WORD)
text2.pack()

label3 = Label(root, text=u'3')
label3.config(height=1, width=10)
label3.pack(expand=YES, fill=BOTH)

text3=Text(root,height=4,width=60,font='Arial 10',wrap=WORD)
text3.pack()

button = Button(root, text = "Bust", width = 10, height = 1)
button.bind("<Button-1>", Hash)
button.pack()

scrollbar = Scrollbar(root)
scrollbar.pack(side=RIGHT, fill = Y)
scrollbar.config(command = text1.yview)
text1.config(yscrollcomman=scrollbar.set)

root.mainloop()



Офлайн

#2 Янв. 22, 2012 20:54:46

Griffon
От: Ukrain, Zaporozhie
Зарегистрирован: 2009-03-04
Сообщения: 324
Репутация: +  11  -
Профиль   Отправить e-mail  

Scrollbar в Text(Tkinter)

В виджете Текст скролбар встроен по умолчанию.



Офлайн

#3 Янв. 22, 2012 21:25:03

Nosaer
От:
Зарегистрирован: 2010-09-29
Сообщения: 14
Репутация: +  0  -
Профиль   Отправить e-mail  

Scrollbar в Text(Tkinter)

то есть этот ползунок к нему никак не привязать?



Офлайн

#4 Янв. 22, 2012 21:46:33

Griffon
От: Ukrain, Zaporozhie
Зарегистрирован: 2009-03-04
Сообщения: 324
Репутация: +  11  -
Профиль   Отправить e-mail  

Scrollbar в Text(Tkinter)

Его не надо привязывать ибо он там уже есть, если вы начнете писать текст вы это увидите.
Но если вам надо зачем-то второй скрол, то можно конечно. Главное правильно его разместить. Рекомендую использовать grid, а не pack менеджер, возможно его поведение для вас будет более очевидным. То что скролл располагается в углу и имеет маленький размер это вопрос правильного использования менеджера (оконного или компоновки не помню как это называется).



Офлайн

#5 Янв. 22, 2012 21:56:48

Griffon
От: Ukrain, Zaporozhie
Зарегистрирован: 2009-03-04
Сообщения: 324
Репутация: +  11  -
Профиль   Отправить e-mail  

Scrollbar в Text(Tkinter)

Я извиняюсь. Вероятно я путаю по поводу скробара по умолчанию. Просто правильно расположите виджеты.



Офлайн

#6 Янв. 26, 2012 10:04:39

Satyr
От:
Зарегистрирован: 2012-01-17
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Scrollbar в Text(Tkinter)

from Tkinter import *
from ScrolledText import ScrolledText
tk = Tk() # окно верхнего уровня
txt = ScrolledText(tk) # виджет текста с прокруткой
txt.pack() # виджет размещается
tk.mainloop()



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version