Найти - Пользователи
Полная версия: Вопрос по MouseWheel в Tkinter
Начало » GUI » Вопрос по MouseWheel в Tkinter
1
4kpt
Не хочет в ХР работать “<MouseWheel>”. Не хочет вообще. Ошибку названия метода не выдает и не работает вообще.
Может кто сталкивался. Помогите. Возможно проблема именно в ХР?

Листинг (для примера):

import Tkinter

a = Tkinter.Tk()

def Dek(event):
print "%s" % event.delta

Listbox = Tkinter.Listbox(a)
Scroll = Tkinter.Scrollbar(a)
Listbox ["yscrollcommand"] = Scroll.set
for i in range(15):
Listbox.insert("end", i)

Listbox.bind("<MouseWheel>", Dek)
Listbox.pack(side = "left")

Scroll ["command"] = Listbox.yview
Scroll.pack(side = "left")

a.mainloop()
Не выдает вообще ничего. Все остальные методы “Button”, “Triple-Button” и другие работают безсбойно. Даже если заместо print прописать
а = 12, все равно не работает. Заранее благодарен.
4kpt
М-да. Никто видно не сталкивался с такой проблемой. Ладно. Пусть пользователь крутит списки прокруткой - не умрет.
Griffon
.bind_all("<MouseWheel>", func= )
4kpt
Спасибо большое. Сегодня попробую обязательно.
Блин, уже не знал, что делать.
sp3
.bind_all(“<MouseWheel>”, func= ) в отличии от bind генерирует события на всех виджетах, а не только к которому применен.
На Listbox работает если только нажать на колесико мышки и крутить, непонятно почему…
Но если добавить Text, то работает нормально.
4kpt
В смысле добавить Text? Что Вы имеете ввиду?
Griffon
Вопрос в фокусе. Ставим фокус на элемент и всё работает. bind_all решает проблему косвенно, но решение оправдано.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB