Уведомления

Группа в Telegram: @pythonsu

#1 Дек. 18, 2012 06:10:49

ilnur
От: Казань
Зарегистрирован: 2009-01-06
Сообщения: 524
Репутация: +  22  -
Профиль   Отправить e-mail  

tkinter listbox прокрутка мышкой

привет

python 2.5.4

import Tkinter
root = Tkinter.Tk()
lb = Tkinter.Listbox(
	root, 
	height	= 28,
	width 	= 50,
	font 	= '24')
lb.pack()
for i in range(50):
	lb.insert(Tkinter.END, unicode(i))
root.mainloop()

почему листбокс не прокручивается мышкой и кнопками вверх вниз на клавиатуре.
спасибо.

Офлайн

#2 Дек. 18, 2012 07:19:43

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

tkinter listbox прокрутка мышкой

Запустил твой код, все прокручивается. OS Linux Mint 13



Офлайн

#3 Дек. 18, 2012 07:21:41

ilnur
От: Казань
Зарегистрирован: 2009-01-06
Сообщения: 524
Репутация: +  22  -
Профиль   Отправить e-mail  

tkinter listbox прокрутка мышкой

у меня windows 7.
эх.
мне надо как то забиндить действие, прокрутки колеса на мышке к scrollbox.
Не могу найти действие, типа MouseWheel. и повесить её как обычно, как Double-Button-1

Офлайн

#4 Дек. 18, 2012 09:08:38

sp3
От:
Зарегистрирован: 2010-01-12
Сообщения: 405
Репутация: +  18  -
Профиль   Отправить e-mail  

tkinter listbox прокрутка мышкой

win7
2.5 - не работает
2,6 - работает



Офлайн

#5 Дек. 18, 2012 09:40:08

ilnur
От: Казань
Зарегистрирован: 2009-01-06
Сообщения: 524
Репутация: +  22  -
Профиль   Отправить e-mail  

tkinter listbox прокрутка мышкой

блин. перешел на 2.7
работает.
спасибо.

бду на нем тестить.

Офлайн

#6 Дек. 18, 2012 11:09:31

4kpt
От: Харьков
Зарегистрирован: 2010-11-03
Сообщения: 998
Репутация: +  63  -
Профиль   Отправить e-mail  

tkinter listbox прокрутка мышкой

ilnur
Для мышки (колеса прокрутки) почему-то необходимо выполнять bind_all, т.е.

Listbox.bind_all("MouseWhell", roll)
Кроме того, можно считать рациональным самостоятельное описание механизма движения по списку с перехватом всех событий (Up, Down, PgUp, PgDown, Home, End, MouseWhell). Таким образом можно добится универсальности и кроссплатформенности. Я перешел на 7 и все программы работают без проблем, даже те, которые написаны на 2.5. Был косячек с самой виндой, но мне на форуме помогли его решить.



Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version