Использование растрового изображения для значка в C#

Вы не можете установить свойство Icon формы, равное растровому изображению. К счастью, достаточно легко создать значок из растрового изображения.

В этом примере используется следующий код, чтобы значок формы отображал изображение в растровом изображении.

Программа получает битмап, хранящийся в ресурсе Spiral. Затем он использует метод GetHicon растрового изображения, чтобы получить дескриптор значка, содержащего одно и то же изображение. Он передает дескриптор методу Значок класса FromHandle для создания объекта Icon и устанавливает свойство Icon формы к результату.

Обратите внимание, что метод GetHicon создает значок в неуправляемой памяти. Если форма перестает пользоваться значком, его память не освобождается. Если вы создаете только несколько значков таким образом, это не имеет большого значения, но если программа запускает сотни значков во время выполнения, это может привести к утечке памяти. Если вам нужно создать и уничтожить многие значки во время выполнения, используйте функцию API DestroyIcon, чтобы освободить память дескриптора значка.

Источник: http://csharphelper.com/blog/2017/01/use-a-bitmap-for-an-icon-in-c/

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)

Add a Comment

Ваш e-mail не будет опубликован. Обязательные поля помечены *