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@daa.com.au
> http://www.daa.com.au/mailman/listinfo/pygtk
> Read the PyGTK FAQ: http://faq.pygtk.org/
> 

_______________________________________________
pygtk mailing list   pygtk@daa.com.au
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://faq.pygtk.org/

Reply via email to