GTK+ unter Windows mit C++

lgorse

Mitglied
Hallo,

ich würde gerne mit dem GTK+ eine GUI-Anwendung mit C++ programmieren. Ich habe alle Dateien korrekt beim Dev-C++ eingetragen, wenn ich jedoch das Beispielprogramm von Wikiepedia kompilieren will, öffnet sich ur ein Konsolen-Fenster und geht direkt wieder zu:

Code:
#include <gtk/gtk.h>
#include <iostream>

using namespace std;

void button_geklickt(GtkWidget *button_widget, gpointer data) {
  printf("Button \"%s\" geklickt!\n",
  gtk_button_get_label(GTK_BUTTON(button_widget)) );
  gtk_main_quit();
}

int main(int argc, char *argv[])
{
  gtk_init(&argc, &argv);

  GtkWidget *window;
  GtkWidget *button;

  window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
  gtk_window_set_title(GTK_WINDOW(window), "Hallo Welt!");
  gtk_container_set_border_width(GTK_CONTAINER(window), 10);
  g_signal_connect_swapped(G_OBJECT(window), "destroy", G_CALLBACK (gtk_main_quit), NULL);

  button = gtk_button_new_with_label("Hallo Wikipedia!");
  g_signal_connect(G_OBJECT(button), "clicked", G_CALLBACK(button_geklickt), NULL);
  gtk_widget_show(button);

  gtk_container_add(GTK_CONTAINER(window), button);

  gtk_widget_show(window);

  gtk_main();
  system("Pause");
  return 0;
}

Könnt ihr mir sagen, was ich da falsch mache?

Vielen Dank,
lgorse
 
Zuletzt bearbeitet:
Ich kenne mich nicht mit GTK+ aus, aber versuche doch einfach das Beispiel von der Homepage: Click!

Außerdem würde ich dir eine andere IDE empfehlen, zum Beispiel Code::Blocks, da Dev-C++ veraltet ist.
 
Hi.
ich würde gerne mit dem GTK+ eine GUI-Anwendung mit C++ programmieren. Ich habe alle Dateien korrekt beim Dev-C++ eingetragen, wenn ich jedoch das Beispielprogramm von Wikiepedia kompilieren will, öffnet sich ur ein Konsolen-Fenster und geht direkt wieder zu:
Du verwechselst hier was. Meinst du kompilieren oder ausführen? Kannst du den Quelltext überhaupt kompilieren oder nicht? Gibt es irgendwelche Meldungen im Dev-C++ Log Fenster?

Was hast du in den Projekteinstellungen eingestellt? (du hast doch ein Projekt?) Hast du auch die Pfade und Compiler Flags eingetragen?

\edit: das Programm funktioniert übrigens tadellos.

Gruß

PS: Für C++ gibt es übrigens die gtkmm Bibliothek.
 
Ich will das Programm komilieren. In den Projekteinstellungen habe ich die notwendigen Include-Verzeichnisse angegeben und die Bibliotheken gelinkt. Fehler werden nicht angezeigt. Das Programm wird auch ausgeführt, beendet sich aber sofort wieder. Ich probier mal gtkmm aus.

// Mit Code::Blocks funktioniert jetzt alles tadellos. Danke an euch beide ;)
 
Zuletzt bearbeitet:
// Mit Code::Blocks funktioniert jetzt alles tadellos. Danke an euch beide ;)
Dann hatte das was mit den Projekteinstellungen zu tun.
Übrigens ist Code::Blocks kein Compiler, sondern eine IDE. Es wird aber MinGW mitgeliefert (zumindest in der einen Downloadversion).
 
Zurück