2011-08-29 126 views
0

我有一个GtkFileChooserDialog的小问题。gtk +:GtkFileChooserDialog隐藏一些小部件

我想隐藏favoris面板(小部件在左边)。

于是我开始得到GtkFileChooserDialog, 的GtkVBox,现在我想以检索它的孩子,海特它, 但我不觉得这是孩子们。

这里是我的代码:

my_dialog = gtk_file_chooser_dialog_new("Hop", NULL, GTK_FILE_CHOOSER_ACTION_OPEN,GTK_STOCK_CANCEL); 
button = gtk_file_chooser_button_new_with_dialog(my_dialog); 

children_dial = gtk_container_get_children(GTK_CONTAINER(my_dialog)); 
v_dial = GTK_VBOX(children_dial->data); 

v_children = gtk_container_get_children(GTK_CONTAINER(v_dial)); 

因此,如果任何人有一个想法,

感谢。

+0

我鼓励你看看gtk +代码。还有一些提示。 * GtkFileChooseDialog *是* GtkDialog *,它在*内容区*中包含一个* GtkFileChooserWidget *。所以我建议你阅读它是如何实现* GtkFileChooserWidget *的,并挖掘它的代码。一个小小的领导,你要找的代码是* gtkfilechooserdefault.c * – erick2red

回答

0

GtkFileChooserDialogGtkFileChooserWidget的孩子是“内部”的孩子,这意味着你不能像那样检索他们。你不应该混淆它们,因为它们可能在未来的版本中以不同的方式实现。但是,您可以通过gtk_container_forall()访问它们。

为什么要隐藏收藏面板?除非你有一个非常好的理由,否则改变用户所期望的标准文件对话框是不好的用户界面设计,只是因为你不喜欢左侧的面板。