Je voudrais créer un système unique.Drawing.Drawing.icon de manière programmatique à partir de 32x32, 16x16 bitmaps. Est-ce possible? Si je charge une icône avec - ... il peut contenir plusieurs images. P> p>
3 Réponses :
Il y a une belle Snippet de code Ici . Il utilise le icon.fromhandle code >
méthode.
du lien: p>
Un fichier .ico em> peut avoir plusieurs images dedans, mais lorsque vous chargez un fichier .ico et créez un objet d'icône, une seule de ces images est chargée. Windows choisit l'image la plus appropriée basée sur le mode d'affichage actuel et les paramètres système et utilise celui-ci pour initialiser l'objet Vous ne pouvez donc pas créer un Bien sûr, il est possible de créer une icône au moment de l'exécution d'un bitmap, c'est ce que vous demandez vraiment? Ou demandez-vous comment créer un fichier .ico? P> System.Drawing.Drawing.Drawing.Con code>, ignorant les autres. P>
system.drawing.icon code> avec plusieurs images, vous devez en choisir un avant de créer l'icône
code>. p>
Mais si je charge un fichier .ico comme si j'ai montré ci-dessus, je peux accéder aux 16x16, 32x32, 48x48, etc. Comme celui-ci -: icon Smallicon = nouvelle icône (myicon, 16, 16);
Parce qu'il sait quel fichier / ressource l'icône a été créée à partir de et peut y retourner et obtenir une nouvelle image. Il n'y a aucun moyen d'ajouter une image à un objet d'icône cependant.
@Johnkneller en fait, ce n'est pas vraiment vrai. Toutes les données d'image sont chargées par la classe code> de la classe code> en mémoire et lorsque vous redimensionnez l'objet d'une autre icône code>, les données d'image sont partagées et la taille la plus proche tirée de l'original ( Partagé) Données.
Vous pouvez essayer d'utiliser png2ico pour créer un fichier .ico, appelez-le en utilisant < Code> System.Diagnostics.Process.start code>. Vous auriez besoin de créer vos images et de les enregistrer sur le disque avant d'invoquer PNG2ICO. P>