IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

GTK+ Discussion :

Question de newbie sur GtkCalendar


Sujet :

GTK+

  1. #1
    Membre du Club
    Inscrit en
    Novembre 2007
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 50
    Points : 52
    Points
    52
    Par défaut Question de newbie sur GtkCalendar
    Bonsoir j'essaie de récupéré la date d'un calendar sur double clic
    Mais j'obtiens COREDUMP
    Est ce que vous savez ce qui ne cloche pas dans mon code car la je séche...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
     
    #include <stdlib.h>
    #include <gtk/gtk.h>
     
    static void
    print_hello (GtkWidget *widget,
                 gpointer   data)
    {
      g_print ("Hello World\n");	
    }
     
    static void
    print_button2(GtkWidget *widget,
                 gpointer data)
    {
      GtkWidget *label = (GtkWidget *) data;
      g_print ("JJ\n");	
      gtk_label_set_text (GTK_LABEL(label),"YAHOOOO");	
    }
     
    static void
    print_select_date(GtkCalendar *calendar,
                 gpointer data)
    {
      g_print ("Clic Calendar\n");
     
      GtkCalendar *cal = (GtkCalendar *) data;  
     
      guint jours;
      guint mois;
      guint annee;
     
      gtk_calendar_get_date (GTK_CALENDAR(cal),
                           &annee,
                           &mois,
                           &jours);
     
      g_print ("AFF\n");
      g_print(jours);
      g_print("/");
      g_print(mois);
      g_print("/");
      g_print(annee);
     
    }
     
    int
    main (int   argc,
          char *argv[])
    {
      GtkBuilder *builder;
      GObject *window;
      GObject *button;
      GObject *button2;
      GtkCalendar *calendar;
      GtkLabel *label;	
     
      GtkBox *box;	
     
      gtk_init (&argc, &argv);
     
      /* Construct a GtkBuilder instance and load our UI description */
      builder = gtk_builder_new ();
      gtk_builder_add_from_file (builder,"test_seul.glade", NULL);	
     
      /* Connect signal handlers to the constructed widgets. */
      window = gtk_builder_get_object (builder, "window1");
      g_signal_connect (window, "destroy", G_CALLBACK (gtk_main_quit), NULL);
     
      button = gtk_builder_get_object (builder, "button1");
      g_signal_connect (button, "clicked", G_CALLBACK (print_hello), NULL);
     
      button2 = gtk_builder_get_object (builder, "button2");
     
      button = gtk_builder_get_object (builder, "quit");
      g_signal_connect (button, "clicked", G_CALLBACK (gtk_main_quit), NULL);
     
      /*Warning présent*/
      label = (GtkLabel *) gtk_builder_get_object(builder, "label1");
      gtk_label_set_text (label,"TEST");
      g_signal_connect (button2, "clicked", G_CALLBACK (print_button2), label);
     
      calendar = (GtkCalendar *) gtk_builder_get_object(builder, "calendar1");
      g_signal_connect (calendar, "day-selected-double-click", G_CALLBACK (print_select_date), calendar);
     
     
      gtk_main ();
     
      return 0;
    }

  2. #2
    Expert confirmé
    Avatar de gerald3d
    Homme Profil pro
    Conducteur de train
    Inscrit en
    Février 2008
    Messages
    2 291
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Conducteur de train
    Secteur : Transports

    Informations forums :
    Inscription : Février 2008
    Messages : 2 291
    Points : 4 941
    Points
    4 941
    Billets dans le blog
    5
    Par défaut
    Quelques petits problèmes sur ces lignes pour commencer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    g_print(jours);
    g_print(mois);
    g_print(annee);
    Quel est l'intérêt de faire ca ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    static void
    print_select_date(GtkCalendar *calendar,
                 gpointer data)
    {
      g_print ("Clic Calendar\n");
     
      GtkCalendar *cal = (GtkCalendar *) data; 
    Tu récupères le pointeur du calendrier avec le premier argument.

    Pour finir pour afficher la fenêtre il te manque un gtk_widget_show_all (GTK_WIDGET (window)); avant le gtk_main ();.

Discussions similaires

  1. Question newbie sur access en réseau
    Par ataya dans le forum Access
    Réponses: 4
    Dernier message: 12/11/2007, 14h50
  2. Question de newbie sur SelectOneRadio
    Par fredlev dans le forum JSF
    Réponses: 1
    Dernier message: 29/06/2007, 22h57
  3. [Débutant]Quelques questions de principe sur l'API win32
    Par silver_dragoon dans le forum Windows
    Réponses: 4
    Dernier message: 19/03/2004, 18h38
  4. [LG]J'ai honte : question de cours sur les paramètres
    Par letibdesneiges dans le forum Langage
    Réponses: 14
    Dernier message: 17/01/2004, 13h57
  5. [QUESTION DE NEWBIE] et delphi la dedans?
    Par Wakko2k dans le forum CORBA
    Réponses: 3
    Dernier message: 01/07/2003, 15h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo