Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

C# для чайников

.pdf
Скачиваний:
183
Добавлен:
27.03.2015
Размер:
15.52 Mб
Скачать

Люди и компьютеры решили прийти к компромиссу. Программисты создают свои программы на языке, который не так свободен, как человеческая речь, но намного более гибок и легок в использовании, чем машинный язык. Такие языки, благодаря которым достигается компромисс (например, С#), называются компьютерными языками высокого уровня. (Хотя термин высокий является весьма относительным.)

Ч т о т а к о е программа?

Что такое программа? В известном смысле, программа Windows является исполняе­ мым файлом, запускаемым двойным щелчком на его пиктограмме. Например, версия Microsoft Word, которая применялась для написания этой книги, является программой. Вы называете такую программу исполняемой. Имена исполняемых программных файлов обычно заканчиваются расширением . е х е .

Но программа на самом деле — это нечто большее. Исполняемая программа состоит из одного или нескольких исходных файлов. Файл программы С# является текстовым файлом, содержащим последовательность команд С#, которые записываются вместе со­ гласно правилам грамматики языка С#. Этот файл называют исходным, возможно, из-за того, что он служит источником расстройства и беспокойства программиста.

Ч т о т а к о е С # ?

Язык программирования С# — один из тех промежуточных языков, которые исполь­ зуются программистами для создания исполняемых программ. Он занимает нишу между мощным, но сложным С++, и легким в использовании, но ограниченным Visual Basic — во всяком случае, в версии 6.0 и более ранних. (Новейшее воплощение Visual Basic

.NET — язык, во многих отношениях похожий на С#. Но как лидирующий язык плат­ формы .NET, именно С# имеет тенденцию первым представлять наиболее новые воз­ можности.) Файл программы С# имеет расширение . c s .

Некоторые считают, что "до-диез" — это то же, что и "ре-бемоль", но вы не должны называть этот новый язык таким именем — по крайней мере в преде­ лах слышимости Редмонда, штат Вашингтон.

ку С# присущи следующие характеристики.

"ибкость: программы С# могут выполняться как на вашей машине, так и переда­ т ь с я по сети и выполняться на удаленном компьютере.

Мощность: язык С# имеет фактически тот же набор команд, что и язык С++, но :о сглаженными ограничениями.

1егкость в использовании: С# изменяет команды, ответственные за большинство >шибок в С++, так что вы потратите гораздо меньше времени на поиск этих ошибок.

визуальная ориентированность: библиотека кода .NET, применяемая языком С# для iHorax его возможностей, предоставляет помощь, необходимую для быстрого созда­ йся сложных визуальных форм с раскрывающимися списками, окнами с закладками, :группированными кнопками, полосами прокрутки и фоновыми изображениями.

Мужественность к Интернету: язык С# играет основную роль в системе .NET, юторая является текущим подходом компании Microsoft к программированию для Vindows и Интернета. .NET произносится как дот-нет.

30

Насть I. Создание ваших первых программ на С#

I / Безопасность: любой язык, предназначенный для использования в Интернете, должен включать серьезную защиту против злобных хакеров.

В заключение стоит отметить, что язык С# является неотъемлемой частью платфор­ мы .NET.

Что такое .NET?

Инициатива .NET появилась несколько лет назад в качестве стратегии Microsoft сде­ лать всемирную сеть доступной простым смертным, таким как вы, например. Сегодня эта инициатива означает гораздо больше и включает в себя все, что делает Microsoft. В частности, она является новым способом программирования для Windows. Эта плат­ форма предоставляет основанный на С язык — С#, а также простые визуальные инстру­ менты, благодаря которым Visual Basic стал таким популярным. Краткое историческое описание поможет вам увидеть корни языка С# и платформы .NET.

Программирование для Интернета традиционно было очень трудным на более старых языках наподобие С и С++. Компания Sun Microsystems в ответ на эту проблему создала язык программирования Java. Для этого компания Sun взяла грамматику языка С++, сде­ лала ее немного более дружественной и ориентировала на распределенную разработку.

Когда программисты говорят "распределенный", они имеют в виду географи­ чески рассредоточенные компьютеры, которые выполняют программы, об­ щающиеся друг с другом — во многих случаях через Интернет.

Когда компания Microsoft занялась Java несколько лет назад, она столкнулась с ком­ панией Sun на почве юриспруденции из-за изменений, которые она хотела сделать в язы­ ке. В результате Microsoft пришлось в какой-то степени отказаться от Java и начать ис­ кать способы конкурировать с этим языком.

Отказ от Java был к лучшему, потому что Java имел серьезную проблему: хотя он и является мощным языком, но вы должны написать вашу программу полностью на языке Java, чтобы получить все его преимущества. В Microsoft имеется достаточное количество разработчиков и написано слишком много миллионов строк исходного кода, так что компания Microsoft должна была придумать некоторый способ поддержки множества языков. Так появилась платформа .NET.

Платформа .NET представляет собой структуру, во многом сходную с библиотеками языка Java, поскольку язык С# подобен Java. Java является не только языком, но и об­ ширной библиотекой кода. Точно так же и С# в действительности нечто намного боль­ шее, чем просто ключевые слова и синтаксис языка С#. Это еще и полностью объектноориентированная библиотека, содержащая тысячи программных элементов, упрощаю­ щих любой вид программирования, который только можно представить. Начиная с баз данных, ориентированных на работу в Интернете, и заканчивая криптографией и скром­ ным диалоговым окном Windows.

Microsoft могла бы утверждать, что платформа .NET намного превосходит пакет Webинструментов компании Sun, основанный на Java, но не в этом дело. В отличие от Java, в платформе .NET от вас не требуется переписывать уже имеющиеся программы. Программист на Visual Basic может добавить всего несколько строк, чтобы "познакомить" существующую программу с Web (это означает, что программа будет "знать", как получить данные из Интер­ нета). Платформа .NET поддерживает все распространенные языки Microsoft и более сорока других языков, написанных третьими компаниями (самый последний список находится на

Глава 1. Создание вашей первой Windows-программы на С#

31

Кроме введения в Windows Forms, эта программа служит проверкой вашей среды Visual Studio. Это всего лишь тест. Если бы это действительно было программой для Windows... Впрочем, это и есть программа для Windows. Если вы сможете успешно на­ писать, скомпоновать и выполнить эту программу, ваша среда Visual Studio настроена правильно, и вы готовы к созданию программ любой сложности.

Создание шаблона

Написание приложений Windows с нуля является, как известно, достаточно трудным процессом. С многочисленными дескрипторами и контекстами создание даже простой программы для Windows вызывает бесчисленные проблемы.

Visual Studio 2005 вообще и С# в частности значительно упрощают задачу по созда­ нию базового приложения WinApp. Честно говоря, придется даже немного разочаро­ ваться, так как вы не будете с волнением создавать его вручную.

Поскольку Visual С# специально создан для работы в Windows, он может защитить от многих сложностей написания программ для Windows с нуля. Кроме того, Visual Studio 2005 включает в себя мастер приложений (Application Wizard), который формирует шаб­ лоны программ.

Обычно шаблоны программ фактически ничего не делают — по крайней мере, ничего полезного. Однако они избавляют от начальных трудностей. Некоторые шаблоны про­ грамм достаточно сложны. Вы будете поражены тем, насколько много возможностей имеет мастер приложений.

После завершения установки Visual Studio 2005 выполните следующие действия для создания шаблона.

1. Для запуска Visual Studio 2005 выберите команду меню StartoAII Programs^

Microsoft Visual Studio 2005^ Microsoft Visual Studio 2005, как показано

на рис. 1.1.

После похрипывания процессора и поскрипывания диска перед вами появится рабочий стол Visual Studio. Теплее, уже теплее...

2. Выберите в меню команду File^New ^ Project, как показано на рис. 1.2.

3. Visual Studio откроет диалоговое окно N e w Project, как продемонстрировано на рис. 1.3.

Проект является набором файлов, которые компонуются пакетом Visual Studio для создания единой программы. Вы будете создавать исходные файлы С#, имеющие расширение . CS. Расширение файла проекта — CSPROJ.

4.В панели Project Types выберите Visual С#, подпункт Windows. В панели

Templates щелкните на пиктограмме Windows Application.

Если вы сразу же не увидите пиктограмму требующегося шаблона, не волнуйтесь. Возможно, необходимо немного прокрутить ползунок в панели Templates.

Пока не щелкайте на кнопке ОК.

Глава 1. Создание вашей первой Windows-программы на С#

33

Рис. 1.1. Вот какую сеть мы плетем, когда задумываем написать программу на С#

34

Часть I. Создание ваших первых программ на С#

Рис. 1.3. Мастер приложений Visual Studio только и ждет, чтобы создать для вас программу Windows

5.В строке ввода Name введите название своего проекта (или оставьте пред­ ложенное по умолчанию).

Мастер приложений создаст папку, в которой сохранит различные файлы, вклю­ чая первоначальные исходные файлы проекта С#. В качестве имени этого катало­ га мастер приложений использует название, которое вы ввели в поле Name . Ис­ ходным названием по умолчанию является W i n d o w s A p p l i c a t i o n l . Если вы уже создавали новый проект, то начальным названием может быть WindowsAp- p l i c a t i o n 2 , WindowsApplication 3 и т.д.

В данном примере можно использовать предложенные по умолчанию название

и расположение для этого нового

каталога: My

D o c u m e n t s \ V i s u a l S t u d i o

P r o j e c t s \ W i n d o w s A p p l i c a t i o n l .

Я помещаю

свои реальные программы

там же, но для настоящей книги было изменено заданное по умолчанию располо­ жение на более короткий путь к файлу. Чтобы изменить заданное по умолчанию расположение, выберите команду меню Tools^Options 1 *Projects and Solutions1 *

General. Укажите новое расположение— С:\C#Programs для

этой книги —

в окне Visual Studio Projects Location и щелкните на кнопке

О К . (Вы можете

одновременно создать новый каталог в диалоговом окне Project Location. Щелк­ ните на пиктограмме папки с маленьким солнышком в верхней части диалогового окна. Каталог уже может существовать, если вы устанавливали примеры про­ грамм с компакт-диска).

6.Щелкните на кнопке О К .

Индикатор диска несколько секунд помигает, прежде чем в центре экрана откро­ ется форма F o r m l .

Глава 1. Создание вашей первой Windows-программы на С#

35

К о м п и л я ц и я и з а п у с к вашей первой программы Windows Forms

После того как мастер приложений загрузит шаблон программы, она откроется в ре­ жиме проектирования. Вы должны преобразовать эту пустую исходную программу С# в приложение Windows, просто чтобы удостовериться, что сгенерированный мастером приложений шаблон не содержит ошибок.

Процесс преобразования исходного файла С# в живое приложение Win­ dows называется построением (или компиляцией). Если в исходном файле содержатся ошибки, они будут обнаружены программой Visual С# в про­ цессе компиляции.

Чтобы скомпилировать и запустить вашу первую программу Windows Forms, выпол­ ните следующие действия.

1.Выберите в меню пункт Build<=>Build projectname (где projectname— это

название наподобие WindowsApplicationl или MyProject)

Должно открыться окно Output. Если оно не открылось, вы можете при желании это

сделать до начала компиляции. Выберите пункт V i e w ^ O t h e r Windows^Output. За­ тем Build. В окне Output прокручивается ряд сообщений. Последнее сообщение должно быть следующего вида: B u i l d : 1 succeeded , 0 f a i l e d , 0 skip­ ped (или чем-то очень похожим на это). Это компьютерный эквивалент выражения "все в порядке". Если вы не используете окно Output, то должны увидеть сообщение B u i l d succeede d или B u i l d f a i l e d в статусной строке прямо над меню Start.

На рис. 1.4 показано, на что похожа программа Visual Studio после компиляции программы Windows, завершенной с окном Output. Не беспокойтесь насчет рас­ положения окон. Вы можете перемещать их так, как вам необходимо. Важными составляющими являются окна Forms Designer и Output. Вкладка окна проекти­

рования обозначена " F o r m l . c s

[ D e s i g n ] " .

2. Теперь вы можете запустить

программу, выбрав в меню пункт D e b u g s

Start Without Debugging.

 

Программа запустится и откроет окно, которое выглядит точно так же, как и окно

Fo rms Designer, что проиллюстрировано на рис. 1.5.

В терминах языка С# такое окно называется формой. Форма имеет границу и строку заголовка вдоль верхней границы с маленькими кнопками Minimize,

Maximize и Close.

3.Щелкните на маленькой кнопке Close в верхнем правом углу рамки для за­ вершения программы.

Вот видите! Программирование на С# не такое уж и трудное.

Эта начальная программа являлась проверкой установки вашего пакета. Если у вас все получилось, следовательно, ваш пакет Visual Studio находится в хорошей форме и готов к программам, рассматривающимся в оставшейся части книги.

Обновите свое резюме, упомянув в нем, что вы являетесь программистом при­

ложений для Windows. В крайнем случае — одного приложения точно...

36

Часть I. Создание ваших первых программ на С#

Окно вывода

Окно Solution Explorer

Рис. 1.4. Первоначальный шаблон программы Windows не очень впечатляет

Рис. 1.5. Шаблон приложения Windows работает, но он не убедит вашу супру­ гу, что пакет Visual Studio 2005 стоит затраченных денег

Украшение программы

Заданная по умолчанию программа Windows не очень впечатляет, но вы можете не­ много ее улучшить. Вернитесь к Visual Studio и выберите окно со вкладкой "Forml. cs

[Design] " (рис. 1.4). Это окно Forms Designer.

Forms Designer является мощным средством, дающим возможность "раскрасить" вашу программу в форме. Когда вы закончите, выберите команду меню Build, и Forms Designer создаст код С#, необходимый для построения приложения С#, с такой же кра­ сивой формой, как вы нарисовали.

Глава 1. Создание вашей первой Windows-программы на С#

37

В этом разделе представлены несколько новых возможностей Forms Designer, кото­ рые упрощают программирование Windows Forms. Вы узнаете, как скомпилировать при­ ложение с двумя полями текстового ввода и кнопкой. Пользователь может ввести чтонибудь в одном поле (обозначенном как Source), но не может в другом (Target). Когда

пользователь щелкнет на кнопке Сору, программа скопирует текст из поля Source в по­

ле Target. Это все.

Размещение элементов управления на форме

Помеченные окна, которые составляют пользовательский интерфейс Visual Studio, называются окнами документов (document windows) и окнами управления (control win­ dows). Окна документов предназначены для создания и редактирования документов, та­ ких, например, как исходные файлы С#, составляющие программу С#. Окна управления, подобные окну Solution Explorer, показанному на рис. 1.4, предназначены для целей управления в Visual Studio в процессе программирования. Больше информации об окнах, меню и других возможностях Visual Studio содержится в дополнительных главах.

Все небольшие безделушки типа кнопок и текстовых полей известны как элементы управления (controls). Как программист Windows, вы используете эти инструментальные средства для создания графического интерфейса пользователя, что обычно является наи­ более трудной частью программы Windows. В окне Forms Designer эти инструменты живут в окне управления Toolbox.

Если ваше окно Toolbox не открыто, выберите команду меню View1 ^Toolbox. На рис. 1.6 показан пакет Visual Studio с открытым в правой части экрана окном Toolbox.

Рис. 1.6. Окно Toolbox битком набито интересиьши элементами управления

Не волнуйтесь, если ваши окна расположены не так, как на рис. 1.6. Например, ваше окно Toolbox может быть слева, справа или посередине. Вы можете пе­ ремещать любое из окон по рабочему столу как хотите. Как это делать, объяс­ няется в дополнительных главах.

38

Часть I. Создание ваших первых программ на С#

В окне Toolbox есть различные разделы, включая Data, Components и Windows Forms. Эти разделы, обычно называемые закладками, просто организовывают элементы управления, чтобы вы не запутались в них. Окно Toolbox содержит множество элемен­ тов управления, к которым вы можете добавлять свои собственные.

Щелкните на знаке "плюс" рядом с надписью C o m m o n Controls (или All Windows Forms), чтобы открыть расположенные ниже элементы, как показано на рис. 1.6. Вы бу­ дете использовать эти элементы управления для размещения на вашей форме. Полоса прокрутки справа дает возможность перемещаться вверх и вниз по элементам управле­ ния, которые перечислены в окне Toolbox.

Элемент управления можно разместить где угодно на форме методом перетаскивания и опускания. Чтобы использовать окно Toolbox для создания двух текстовых полей и кноп­ ки, нужно выполнить следующие действия.

1.Захватите мышью элемент управления Textbox. переместите его на форму, которая обозначена как Forml, и отпустите кнопку мыши.

Возможно, вам придется пролистать окно Toolbox. После того как вы перетащите требуемый элемент управления, на форме появится текстовое поле. В нем может содержаться текст t e x t B o x l . Это название, которое назначено мастером проек­ тирования данному конкретному элементу управления. (Кроме свойства Name, элемент управления имеет свойство T e x t , которое не обязательно должно соот­ ветствовать свойству Name) . Щелкая и перетаскивая углы текстового поля, мож­ но изменять его размеры.

Текстовое поле можно сделать только шире. Его нельзя сделать более высо­ ким, потому что по умолчанию эти текстовые поля являются однострочными. Небольшая указывающая вправо стрелка на текстовом поле позволяет изме­ нить эту настройку, но не обращайте на нее внимания, пока не прочтете допол­ нительные главы.

2.Снова захватите мышью элемент управления Textbox и поместите его под первым текстовым полем.

Обратите внимание на появившиеся тонкие синие направляющие линии, которые помогают выровнять второе текстовое поле с другими элементами управления. Это отличная новая возможность.

3.Теперь захватите мышью элемент управления Button и поместите его под двумя текстовыми полями.

Под текстовыми полями появится кнопка.

4.Изменяйте размеры формы и перемещайте элементы управления, исполь­ зуйте направляющие линии, пока форма не станет привлекательной.

Полученная форма показана на рис. 1.7. Ваша форма может выглядеть не­ сколько иначе.

Управление с в о й с т в а м и

Теперь самая важная проблема в вашем приложении — это обозначение кнопки. Название b u t t o n l не очень наглядно. В первую очередь вы должны изменить именно его.

IM на С #

Глава /. Создание вашей первой Windows-программы на С#

39

Рис. 1.7. Первоначальный вид формы

Каждый элемент управления имеет набор свойств, которые определяют его внешний вид и то, как он раббтает. Получить доступ к этим свойствам можно с помощью окна Properties. Для изменения свойств различных элементов управления выполните сле­ дующие действия.

1.Выберите кнопку, щелкнув на ней мышью.

2.Вызовите окно Properties с помощью команды меню V i e w ^ Properties

Window.

Кнопка имеет несколько наборов свойств: вверху перечислен набор свойств внешнего вида, ниже — свойства поведения и несколько других. Вы должны из­ менить свойство T e x t , которое находится в группе Appearance. (Чтобы отсорти­ ровать свойства в алфавитном порядке, а не по категориям, щелкните на обозна­ ченной буквами AZ пиктограмме в верхней части окна.)

3.В окне Properties выберите поле в правой колонке рядом со свойством Text. Введите в него текст Сору и нажмите клавишу <Enter>.

Эти настройки проиллюстрированы на рис. 1.8 в окне Properties и в результи­ рующей форме. Кнопка теперь помечена как Сору.

Рис. 1.8. Окно Properties позволяет управлять свойствами элементов

4. Измените начальное содержимое элементов управления Textbox. Выберите верхнее текстовое поле и повторите третий шаг, введя текст З д е с ь поль­ зовател ь вводит текст . Сделайте то же самое для нижнего текстового поля, введя текст Сюда программа скопирует текст .

40

Часть I. Создание ваших первых программ на С#

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]