[gtk] signaux

signaux [gtk] - Programmation

Marsh Posté le 07-04-2002 à 17:16:12    

comment appeler une fonction avec plus de 2 parametres lorsque l'ion clike sur un bouton ...
 
ex>  
gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(test),NULL);


---------------
email : otb82@hotmail.com
Reply

Marsh Posté le 07-04-2002 à 17:16:12   

Reply

Marsh Posté le 07-04-2002 à 19:18:00    

Les prototypes des fonctions de callback ne prennent qu'un seul argument donc il faut que tu passes comme argument un pointeur sur une structure (struct, tableau ...)  qui contient tes différents paramètres.

Reply

Marsh Posté le 07-04-2002 à 20:08:00    

zeltron a écrit a écrit :

Les prototypes des fonctions de callback ne prennent qu'un seul argument donc il faut que tu passes comme argument un pointeur sur une structure (struct, tableau ...)  qui contient tes différents paramètres.  




arf c la merde ... genre pour mettre le paramaetre 3 widget je fais un tablo les contenant ....
c pas tres tres pratique


---------------
email : otb82@hotmail.com
Reply

Marsh Posté le 07-04-2002 à 20:46:04    

un pointeur sur une structure les contenants, pas un tableau.

Reply

Marsh Posté le 07-04-2002 à 21:05:04    

KarLKoX a écrit a écrit :

un pointeur sur une structure les contenants, pas un tableau.  



on c t bien compris :)


---------------
email : otb82@hotmail.com
Reply

Marsh Posté le 08-04-2002 à 15:43:39    

soit la structure suivante :
struct param  
{
  GtkWidget *adresse;
  GtkWidget *prof;
  GtkWidget *taille_max;
  GtkWidget *nb_pages;    
};
 
avec adresse une combo box
et les autres des spin button
 
struct param parametres;
....
 
soit le signal suivant qd on clike sur un bouton
          button = gtk_button_new_with_label (" Reglages par Defaut " );
   gtk_fixed_put (GTK_FIXED (fixed), button, 25, 250);
   gtk_signal_connect (GTK_OBJECT (button), "clicked",
        GTK_SIGNAL_FUNC (defaut1), parametres);
   gtk_tooltips_set_tip (tooltips, button, "Reinitialiser", NULL);
   gtk_widget_show (button);
 
 
 
c pas comme ca au on fait ?


---------------
email : otb82@hotmail.com
Reply

Marsh Posté le 08-04-2002 à 15:45:00    

et la fonction appele est du type
 
void defaut1(GtkWidget *button, struct param parametres)
{
    blabla
}


---------------
email : otb82@hotmail.com
Reply

Marsh Posté le 08-04-2002 à 22:51:44    

up


---------------
email : otb82@hotmail.com
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed