我有我的窗户。在这个窗口中,我想要两个按钮。一个是插头,另一个是正常的。
我执行以下操作
插件.cc
#include <gtkmm.h>
#include <gtkmm/plug.h>
class PlugButton : public Gtk::Plug{
public:
PlugButton(){add(button); id = get_id();}
int id;
Gtk::Button button{"Plug Button"};
}
主文件
Gtk::HBox box;
Gtk::Button button{"Normal Button"};
Gtk::Socket socket;// I have included gtkmm/socket.h
PlugButton plug;
box.pack_start(button);
box.pack_end(socket);
socket.add_id(plug.id);
window.add(box);
window.show_all_children();
这可以编译,但我得到
gtk_socket_add_id: assertion '_gtk_widget_get_anchored (GTK_WIDGET (socket))' failed
如何将 Gtk::Plug 的实例嵌入到套接字中?