[gtkmm] 2. Fenster
-
Hallo,
in meinem Programm benötige ich zeitweise ein zweites Fenster, das Eingaben vom Benutzer entgegen nimmt. Ein Gtk::Dialog kommt für meinen Anwendungsbereich nicht in Frage, da das Fenster mehr als eine Eingabe entgegen nehmen soll und ein Gtk::Dialog sich sofort schließt, wenn man auf einen der Buttons klickt. Von daher hatte ich die Idee, mir eine Klasse von Gtk::Window abzuleiten, und dieses Window dann durch mein "Main-Window" starte. Wie lässt sich dieses Starten realisieren, denn ein Gtk::Window hat ja keine show() bzw. run() Methode.
Weiß jemand eine Antwort auf meine Frage oder hat eine bessere Idee?
Danke
-
Gtk::Widget hat eine Methode show(), und Gtk::Window ist indirekt davon abgeleitet, also hat auch das show.
Egal, so ist die Alternative:
#include <gtkmm.h> class Bar : public Gtk::Window { public: Bar() { set_title("Zweites Fenster"); set_default_size(200,300); show_all(); } }; class Foo : public Gtk::Window { Bar b; public: Foo() { set_title("Erstes Fenster"); set_default_size(400,400); show_all_children(); } }; int main(int argc, char **argv) { Gtk::Main m(argc, argv); Foo f; m.run(f); return 0; }
-
Danke, das war die Lösung
.