Developpez.com - C
X

Choisissez d'abord la catégorieensuite la rubrique :


Création d'une boite de dialogue "A propos" en GTK+

Date de publication : 09 Mai 2005

Par Nicolas Joseph (home)
 

Création d'une boite de dialogue "A propos" en C/GTK+ (nécessite la version 2.6). Le fichier doit ce trouver dans le même répertoire que l'exécutable.


void about (void)
{
   GError *error = NULL;
   GIOChannel *channel = NULL;

   channel = g_io_channel_new_file ("licence.txt", "r", &error);
   if (channel != NULL)
   {
      char *text = NULL;

      if (g_io_channel_read_to_end (channel, &text, 0, &error) == G_IO_STATUS_NORMAL)
      {
         GtkWidget *p_dialog = gtk_about_dialog_new ();

         gtk_about_dialog_set_name (GTK_ABOUT_DIALOG (p_dialog), "Nom du projet");
         gtk_about_dialog_set_copyright (GTK_ABOUT_DIALOG (p_dialog), "Nicolas JOSEPH");
         gtk_about_dialog_set_license (GTK_ABOUT_DIALOG (p_dialog), text);
         gtk_about_dialog_set_website (GTK_ABOUT_DIALOG (p_dialog), "http://nicolasj.developpez.com");
         gtk_dialog_run (GTK_DIALOG (p_dialog));
         g_free (text);
         if (g_io_channel_shutdown (channel, FALSE, &error) == G_IO_STATUS_ERROR)
         {
            GtkWidget *p_dialog = NULL;

            p_dialog = gtk_message_dialog_new (NULL, GTK_DIALOG_MODAL,
                                               GTK_MESSAGE_INFO, GTK_BUTTONS_OK,
                                               error->message);
            gtk_dialog_run (GTK_DIALOG (p_dialog));
            gtk_widget_destroy (p_dialog);
         }
      }
   }
   if (error != NULL)
   {
      GtkWidget *p_dialog = NULL;

      p_dialog = gtk_message_dialog_new (NULL, GTK_DIALOG_MODAL,
                                         GTK_MESSAGE_INFO, GTK_BUTTONS_OK,
                                         error->message);
      gtk_dialog_run (GTK_DIALOG (p_dialog));
      gtk_widget_destroy (p_dialog);
   }
   return;
}

Mes autres sources :
gtk_about crée d'une boîte de dialogue "A propos" en GTK+
getNextLine retounee la prochaine ligne d'un fichier
str_str retourne l'indice de la première occurance d'une sous chaîne

Valid XHTML 1.1!Valid CSS!

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2006 Nicolas Joseph. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

Contacter le responsable de la rubrique C