PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Dialog in Gtkmm



Broken
06-04-2006, 10:52
Moin
Ich habe ein kleines Problem mit gtkmm. Ich möchte gerne einen AboutDialog erstellen, das funktioniert aber nicht. Meine Frage: Liegt es daran, dass ich gtkmm2.4 verwende? wenn ja, wie kann ich es anders realisieren, ohne eine neuere version von gtkmm zu benutzen?

MfG

jeebee
06-04-2006, 18:09
*glaskugel raushol*

wenn du nicht sagst, was du probiert hast und was dabei _genau_ passiert ist (sprich exakte Compiler-Meldung, Laufzeitfehler usw.) kann dir keiner helfen.

MfG jeebee

Broken
07-04-2006, 09:40
okay. versuch ich es mal anders:

Wie kann ich in einem herkömmlichen Gtk:: Dialog ein Label anzeigen?

jeebee
07-04-2006, 10:09
ich denke, wenn du mit
VBox* Gtk::Dialog::get_vbox () eine Referenz auf die VBox des Dialogs holst und dann ein Label in die VBox einfügst, sollte es gehen. Da ich aber vor allem Gtk+C programmiere, kann ich nicht sagen, obs wirklich funktioniert. Gtk::Dialog ist in [1] gut beschrieben.

Wenn du aber einen Konfigurationsdialog oder etwas ähnliches machen willst, empfehlen die GTK-Leute ein WINDOW_TOPLEVEL zu nehmen und mit CENTER_ON_PARENT zu positionieren (ich weiss gerade nicht ob die Typen für gtkmm korrekt sind).
[1] http://www.gtkmm.org/docs/gtkmm-2.4/docs/reference/html/classGtk_1_1Dialog.html#_details

Broken
07-04-2006, 10:12
nee, brauch einfach nur nen Fenster, wo der Author und der name und version etc. zusehen sind.
Aber wie füge ich *vbox nen label zu?

jeebee
07-04-2006, 10:34
void Gtk::Box::pack_start (
Widget& child,
bool expand,
bool fill,
guint padding = 0
)
von http://www.gtkmm.org/docs/gtkmm-2.4/docs/reference/html/classGtk_1_1Box.html#31aa59034a669239c4b99a9ced574 2d6

eigentlich findest du alles, was du brauchst auf http://www.gtkmm.org/docs/gtkmm-2.4/docs/

Broken
07-04-2006, 10:45
error: request for member `pack_start' in `DVBox', which is of
non-aggregate type `Gtk::VBox*'
------------
Da bekomm ich diese fehlermeldung

jeebee
07-04-2006, 12:11
da kann ich dir auch nicht helfen, da ich wie gesagt "nur" GTK+C kenne. Evtl. kannst du die Methode pack_start nicht auf einen Pointer auf eine VBox anwenden.

anda_skoa
07-04-2006, 17:23
non-aggregate type Fehlermeldungen deuten oft darauf hin, daß man irrtümlich .methode() statt ->methode() auf einem Pointer aufgerufen hat

Ciao,
_

Broken
11-04-2006, 08:45
Danke, jetzt funktioniert es