bonjour
je cherche l'équivalent de repaint() en java pour le c#.
voici mon probleme : j'ai une petite application dans laquelle il y a une image noire et un bouton parcourir. ce que j'aimerais c'est que quand on a choisi son image, elle soit redimensionnée et affichée dans la fenetre.
mais quand on a choisi l'image le travail de redimensionnement semble bien se faire, mais pas le remplacement de l'image à lécran.
en revanche, quand je modifie mon code de manière à ce que le choix de l'image à afficher se fasse dès le lancement de l'application (au placement direct de l'image dans le conteneur donc), là oui l'image est bien redimensionnée et affichée.
j'ai aussi essayé de modifier des conteneurs lors d'un evenement mais rien ne se passe non plus, j'ai l'impression que le contenu de la fenetre est "scellé" à partir du moment où elle est affichée.
je suis sous linux et j'utilise gtk# comme bibliotheque graphique.
extrait du code :
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 ... public class Test { ... static Gtk.Image img; static string file; ... static void Open (object obj, EventArgs args) { FileChooserDialog chooser ... ... file = ret; UpdImg(); } // Open() ... public static void UpdImg ( ) { Gdk.Pixbuf pb ... ... img = new Gtk.Image ( pb ); // probleme ici : la nouvelle image ne remplace pas l'ancienne } // UpdImg() ... public static void Main(string[] args) { ... Gdk.Pixbuf pb = new Gdk.Pixbuf ( Colorspace.Rgb, false, 8, 32, 32 ); pb.Fill ( 0 ); // image 32x32 noire img = new Gtk.Image ( pb ); tbl.Attach(img, 1, 2, 0, 1); ... } // Main() ... } // class Test
Partager