bonjours,
je me suis docummenté sur le manuel des fonctions permettant de dessiner un graphe , j'ai vu qu'il existe le widget GtkCurve, par contre j'arrive pas a m'en servire pour dessiner un graphe de points se trouvant dans un tableau ...
je comprend pas tres bien les fonctions du manuel ..gtk_set_vector .. gtk_get_vector ...
voila mon code qui fait pas grande chose ...

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
 
#include <stdlib.h>
#include <gtk/gtk.h>
 
void OnDestroy(GtkWidget *pWidget, gpointer pData);
int main(int argc,char **argv)
{
    // Declaration du widget
    GtkWidget * pWindow;
    GtkWidget * pVbox;
    GtkWidget * pCurve;
    int veclen=5;
    gfloat vector[5]={0,2,4,5,8};
 
    gtk_init(&argc,&argv);
 
    // Creation de la fenetre
    pWindow = gtk_window_new(GTK_WINDOW_TOPLEVEL);
    gtk_window_set_default_size(GTK_WINDOW(pWindow), 500, 300);
    // Connexion du signal "destroy"
    g_signal_connect(G_OBJECT(pWindow), "destroy", G_CALLBACK(OnDestroy), NULL);
 
    pVbox=gtk_vbox_new(TRUE,10);
    // Ajout de la GtkVBox dans la fenetre
    gtk_container_add(GTK_CONTAINER(pWindow), pVbox);
 
    pCurve=gtk_curve_new();
    gtk_box_pack_start(GTK_BOX(pVbox), pCurve, TRUE, TRUE, 10);
 
    //gtk_curve_set_range(GTK_CURVE(pCurve),0,10,0,10);
    //gtk_widget_set_sensitive(pCurve,TRUE);
    gtk_curve_set_vector(GTK_CURVE(pCurve),veclen,vector);
 
 
    gtk_widget_show_all(pWindow);
    // Demarrage de la boucle evenementielle
    gtk_main();
    return EXIT_SUCCESS;
}
void OnDestroy(GtkWidget *pWidget, gpointer pData)
{
    gtk_main_quit();
}
quand je fais gtk_set_vector : ca ne fais pas entrer mes points dans le graphe .
et j'aimerai que je ne peux pas modifier le graphe avec la souris ,donc j'ai utilisé gtk_widget_set_sensitive(pCurve,TRUE); mais ca dessine rien...

merci pour votre aide ..