代码改变世界

invalid cast from `GtkComboBoxEntry' to `GtkEntry'

2011-09-14 16:18  htc开发  阅读(306)  评论(0编辑  收藏  举报
Date: Tue, 20 Jul 2004 23:50:07 GMT

Thanks, that solved my problem.

On Tue, 20 Jul 2004 23:32:08 +0000, Andrew Taylor wrote:

> Claire wrote: 

>> I'm using a GtkComboBoxEntry widget in my app and I'm trying to get the 
>> text from it using gtk_entry_get_text() because the doucmentation says to 
>> use GtkEntry functions on it. The problem I having is I'm not quite how to 
>> cast it. I tried GTK_ENTRY, GTK_COMBO, and even GTK_ENTRY(GTK_COMBO()), 
>> but no matter I get errors like this " invalid cast from 
>> `GtkComboBoxEntry' to `GtkEntry'" when attempting to read the entry. 


> The docs I have 
> (http://developer.gnome.org/doc/API/2.2/gtk/GtkComboBoxEntry.html) say 
> to use GTK_ENTRY (GTK_BIN (combo_box_entry)->child). 

> Note that GtkComboBoxEntry is not a descendant of GtkEntry, so you can't 
> cast it to one. It is, however, a GtkBin container, which according to 
> the docs, should contain a GtkEntry. So, as shown above, you need to 
> downcast it to a GtkBin and grab the first child. 

> You might also want to refer to the GTK+ object hierarchy: 
http://developer.gnome.org/doc/API/2.2/gtk/ch01.html