Вопрос 7. Как нарисовать иконку на форме?

Автор: admin | 14 Июнь 2008 – 15:00 -


Вопрос 7. Как нарисовать иконку на форме?

Например, вы пишете программу настройки Windows. Или хотите дать пользователю возможность изменять иконку вашей программы. Или еще что-нибудь в таком же роде. Как же нам загрузить иконку?

Для этого мы должны, во-первых, загрузить нашу иконку из файла и, во-вторых, получить контекст для рисования.

Вот пример такого кода:

        protected override void OnPaint(PaintEventArgs e)
        {
            // Получаем контекст для рисования.
            Graphics g = e.Graphics;
            // Загружаем иконку.
            Icon icon = new Icon(@"c:\tmp\directx.ico");
            // Рисуем иконку на форме.
            g.DrawIcon(icon, 10, 10);
            base.OnPaint (e);
        }

Обратите внимание, что мы перед путем к иконке (который может быть и полным, и относительным) мы поставили знак @ – для того, чтобы слеши воспринимались дословно, а не как спец символы.


Tags: , , , , , , ,
Находится в FAQ по C# | No Comments »

Ответить

Вы должны быть в системе, дабы комментировать.


C# — язык программирования, сочетающий объектно-ориентированные и аспектно-ориентированные концепции. Разработан в 1998—2001 годах группой инженеров под руководством Андерса Хейлсберга в компании Microsoft как основной язык разработки приложений для платформы Microsoft .NET. Компилятор с C# входит в стандартную установку самой .NET, поэтому программы на нём можно создавать и компилировать даже без инструментальных средств вроде Visual Studio. Квартиры в Киеве посуточно . иконки для тем C# относится к семье языков с C-подобным синтаксисом, из них его синтаксис наиболее близок к С++ и Java. Язык имеет строгую статическую типизацию, поддерживает полиморфизм, перегрузку операторов, указатели на функции-члены классов, атрибуты, события, свойства, исключения, комментарии в формате XML. Переняв многое от своих предшественников — языков С++, Java, Delphi, Модула и Smalltalk — С#, опираясь на практику их использования, исключает некоторые модели, зарекомендовавшие себя как проблематичные при разработке программных систем: так, C# не поддерживает множественное наследование классов (в отличие от C++).