[pygtk] GTK_IS_WIDGET on subclass of a widget fails
Kelvin Ho
kelvin.ho.ka.wai at gmail.com
Fri May 22 23:51:01 WST 2009
Have a look at this:
http://fuhm.net/super-harmful/
;)
On Fri, May 22, 2009 at 3:21 PM, Neil Dugan
<pygtk at butterflystitches.com.au>wrote:
> Christian Becke wrote:
> > Jeffrey Finkelstein schrieb:
> >> I'm new to Gtk. I tried to create a subclass of an HBox and add it to a
> >> window, but I get a GtkWarning telling me that the assertion
> >> `GTK_IS_WIDGET()' fails on the instance of my subclass.
> >>
> >> For example:
> >>
> >> ===code===
> >>
> >> from gtk import Window, HBox, WINDOW_TOPLEVEL, main
> >>
> >> class FooBox(HBox):
> >> def __init__(self): pass
> >
> > I think you have to call the constructor of the parent object here:
> > def __init__(self):
> > HBox.__init__(self)
>
> wouldn't it be better to use
> super(FooBox,self).__init__()
>
> > and you have to make your new widget known:
> > import gobject
> > gobject.type_register (FooBox)
> >
> >> window = Window(WINDOW_TOPLEVEL)
> >> window.add(FooBox())
> >> window.show_all()
> >> main()
> >>
> >> ===/code===
> >>
> >> yields a warning at "window.add()", namely "GtkWarning:
> >> gtk_container_add: assertion `GTK_IS_WIDGET (widget)' failed". This
> >> causes the widget to not be displayed in the window.
> >>
> >> I don't really understand why this is; am I missing a method call?
> >
> > Have a look at the gobject tutorial [1].
> >
> > HTH,
> >
> > Chris
> >
> > [1]
> >
> http://www.sicem.biz/personal/lgs/docs/gobject-python/gobject-tutorial.html
> > _______________________________________________
> > pygtk mailing list pygtk at daa.com.au
> > http://www.daa.com.au/mailman/listinfo/pygtk
> > Read the PyGTK FAQ: http://faq.pygtk.org/
> >
>
> _______________________________________________
> pygtk mailing list pygtk at daa.com.au
> http://www.daa.com.au/mailman/listinfo/pygtk
> Read the PyGTK FAQ: http://faq.pygtk.org/
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.daa.com.au/pipermail/pygtk/attachments/20090522/f975520d/attachment.htm
More information about the pygtk
mailing list