Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/147.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 将Gtk::条目添加到Gtk::对话框_C++_Dialog_Gtkmm_Gtkentry - Fatal编程技术网

C++ 将Gtk::条目添加到Gtk::对话框

C++ 将Gtk::条目添加到Gtk::对话框,c++,dialog,gtkmm,gtkentry,C++,Dialog,Gtkmm,Gtkentry,我正在向Gtk::Dialog添加Gtk::Entry Gtk::Dialog *dialog = manage ( new Gtk::Dialog() ); dialog->set_title("Add Text"); Gtk::Entry entry; entry.set_activates_default(true); entry.set_max_length(50); entry.set_text("hello world"); entry.select_region(0, e

我正在向
Gtk::Dialog
添加
Gtk::Entry

Gtk::Dialog *dialog = manage ( new Gtk::Dialog() );
dialog->set_title("Add Text");

Gtk::Entry entry;

entry.set_activates_default(true);
entry.set_max_length(50);
entry.set_text("hello world");
entry.select_region(0, entry.get_text_length());

dialog->add(entry);
dialog->show();
此代码显示一个空对话框。使用
show_all()
show_all_children()
时,不会发生任何事情,甚至不会显示一个空对话框

在所有情况下,我都会得到以下警告:

Gtk WARNING**:试图将类型为gtkmm_uugtkentry的小部件添加到gtkmm_ugtkdialog,但作为GtkBin子类,gtkmm_ugtkdialog一次只能包含一个小部件;它已经包含GtkVBox类型的小部件


请帮助我解决此问题。

Gtk::对话框已经添加了一个VBox。查看Gtk::Dialog类的源文件,我找到了
get_vbox()
函数。我必须访问VBox以向对话框添加更多组件

dialog->get_vbox()->pack_start(*entry, Gtk::PACK_SHRINK);
dialog->set_text("hello world");

dialog->set_size_request(200,100);
dialog->show_all();

而且一切正常。

Gtk::Dialog已经添加了一个VBox。查看Gtk::Dialog类的源文件,我找到了
get_vbox()
函数。我必须访问VBox以向对话框添加更多组件

dialog->get_vbox()->pack_start(*entry, Gtk::PACK_SHRINK);
dialog->set_text("hello world");

dialog->set_size_request(200,100);
dialog->show_all();
而且一切正常