窓があります。このウィンドウには 2 つのボタンが必要です。1つはプラグで、もう1つは普通です。
私は次のことをします
plug.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"};
}
main.cc
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 のインスタンスをソケットに埋め込むにはどうすればよいですか?