Урок 8. Работаем с меню

Написано admin в 20 Июнь 2008 – 19:32 -


Урок 8. Работаем с меню

Сейчас мы с вами рассмотрим, как использовать меню (а точнее, главное меню — экземпляр класса MainMenu) в программах на C#. Главное, что мы сделаем — это динамическое добавление пунктов меню и обработчиков для них.

Программа наша будет работать так — при нажатии на кнопку (а это будет единственная кнопка на форме) в главное меню будет добавляться еще один подпункт. Текст на этом подпункте будет очередное число («1″, «2″, …). При выборе любого пункта меню будет появляться messagebox с текстом, совпадающим с текстом на нажатом пункте меню.

Итак, создайте новый Windows-проект, разместите на форме кнопку и добавьте MainMenu из окна Toolbox.

MainMenu добавится не на саму форму, а ниже (и это логично, так как мы не можем задать точного положения главного меню на форме — x и y, например; так что и особого смысла в расположении на самой форме нет). В меню задайте имя самого первого пунта как «Menu». Read more »


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

Урок 7. Работаем с XML-файлом

Написано admin в 20 Июнь 2008 – 19:31 -


Урок 7. Работаем с XML-файлом

Для работы с XML на платформе .NET существует пространство имен System.Xml. Подсоединим его к созданной нами Windows-программе. Для этого добавим строку

...
using System.Xml;

наверху файла.

На форме разместите кнопоку. По нажатии на эту кнопку наша программа выдаст из некого XML-файла все дочернии узлы первого уровня (т. е. вложенные непосредственно в корневой тег).

В обработчике щелчка по кнопке напишите следующий код:

Read more »


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

Урок 6. Создание потока

Написано admin в 20 Июнь 2008 – 19:29 -


Урок 6. Создание потока

Что такое отдельный поток? В первом приближении это некоторая отдельная часть программы, которая может выполняться параллельно с другими частями программы. Ключевое слово тут — параллельно. Т. е. в одном своем потоке программа может делать некоторое длительное действие, а в другом потоке — другое, и эти действия будут выполняться параллельно.

Классический пример использования потоков можно найти в программе Word — тут в одном потоке может происходить фоновая проверка орфографии, в другом — печать текста пользователем, в третьем — сохранение файла на жесткий диск.

Для использования потоков в программе мы используем пространство имен System.Threading. Простейший поток — это экземпляр класса Thread из этого пространства имен.

Рассмотрим пример использования потоков в Windows-приложении. Создайте обычное Windows-приложение на C#. Разместите на форме две кнопки, заголовки на которых поменяйте на Start Thread и MsgBox соответственно. По первой кнопке мы запустим поток, в котором бы будем выполнять некоторое продолжительное действие (оно будет длиться несколько секунд). По второй кнопке мы будем выполнять некоторое параллельное действие (там мы просто вызовем обычный MessageBox).

Вот что вы должны добавить в текст программы (т. е. в класс формы):

Read more »


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

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