Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » GUI
  • » PyGTK и Glade: не передаются данные событий [RSS Feed]

#1 Ноя. 11, 2008 21:08:57

sbar
От:
Зарегистрирован: 2007-08-15
Сообщения: 29
Репутация: +  0  -
Профиль   Отправить e-mail  

PyGTK и Glade: не передаются данные событий

Создал в Glade окно и кнопку. Задал кнопке функцию-коллбэк “callback” (на вкладке Signals в стобце Handler) и данные “my data” (там же, но в столбце User data). Код написал такой:

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

import gtk
import gtk.glade

def callback(*args):
for i in args:
print i

if __name__ == "__main__":
xml = gtk.glade.XML("123.glade")
xml.signal_autoconnect(locals())
gtk.main()
При нажатии на кнопку получаю
<gtk.Button object at 0x81c066c (GtkButton at 0x8225150)>
. А где же “my data”?



Офлайн

#2 Ноя. 12, 2008 07:25:50

pythonwin
От:
Зарегистрирован: 2006-07-18
Сообщения: 1294
Репутация: +  0  -
Профиль   Отправить e-mail  

PyGTK и Glade: не передаются данные событий

def func1(self, widget, event=None):
print locals()

xml.signal_autoconnect({'on_button1_clicked':func1})



Офлайн

#3 Ноя. 12, 2008 08:20:16

sbar
От:
Зарегистрирован: 2007-08-15
Сообщения: 29
Репутация: +  0  -
Профиль   Отправить e-mail  

PyGTK и Glade: не передаются данные событий

Ничего существенного не поменялось. Теперь получается

{'widget': <gtk.Button object at 0x81c0644 (GtkButton at 0x8225150)>, 'event': None}
А если еще и self написать — будет “TypeError: on_button1_clicked() takes at least 2 arguments (1 given)” (я ж не в классе пишу эту функцию). Как же сделать что бы в event было “my data”?



Отредактировано (Ноя. 12, 2008 08:33:03)

Офлайн

  • Начало
  • » GUI
  • » PyGTK и Glade: не передаются данные событий[RSS Feed]

Board footer

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

Powered by DjangoBB

Lo-Fi Version