Bonjour,
j'ai une application toute simple qui contient une zone de dessin (gnome_canvas) imbriquée dans une frame, elle-même imbriquée dans la fenêtre principale.
Je trace des fonctions dans mon canevas et j'aimerai que lorsque la fenêtre est redimensionnée, la taille des dessins dans le canevas s'ajuste automatiquement.
Voilà ce que j'ai fait sommairement :
- je récupère le moment où l'application est redimensionnée grace au signal " expose-event "
- je relie ce signal à la fonction suivante :
Si mon canevas est vide, pas de problème.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 void redim(GtkWidget *pWindow, GdkEventExpose *event, gpointer data) { gint w,h; gtk_window_get_size(GTK_WINDOW(pWindow),&w,&h); gnome_canvas_set_pixels_per_unit(GNOME_CANVAS(data),500.0/w); }
Cependant, le moindre dessin dedans consomme toutes les ressources de mon pc et le programme devient inutilisable...
Dois-je utiliser un autre signal que expose-event ou alors changer complétement de méthode ?
Merci !
Partager