Рис. 6.29. Пиктограмма.
9. Удалить из кода событие формы Paint.
10. Обработчик щелчка на кнопке нужно переписать, как показанов листинге 6.39.
Листинг 6.39
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button1.Click
Dim br As New Drawing.SolidBrush(Drawing.Color.Red)
Dim g As Graphics = Me.CreateGraphics()
Dim rg1, rg2 As Drawing.Region
rg1 = New Drawing.Region(New Drawing.Rectangle(0, 0, 240, 110))
rg2 = New Drawing.Region(New Drawing.Rectangle(100, 50, 40, 100))
rg1.Xor(rg2)
g.Clip = rg1
g.FillEllipse(br, 20, 40, 200, 200)
Dim pathStr As String = IO.Path.GetDirectoryName(_
System.Reflection.Assembly.GetExecutingAssembly(). GetName(). CodeBase)
Dim fs As IO.FileStream = New IO.FileStream(_
pathStr + В«My.icoВ», IO.FileMode.Open)
Dim ico As New Drawing.Icon(fs)
g.DrawIcon(ico, 105, 120)
g.Dispose()
br.Dispose()
ico.Dispose()
fs.Close()
End Sub
11. Запустить приложение. После нажатия кнопки на экране должно появиться следующее изображение, показанное на рис 6.30.
Рис. 6.30. Результат работы измененной программы.
В этой программе было показано, как загружается и выводится на экран файл пиктограммы. Кроме этого, было показано, как можно комбинировать области для создания сложной зоны вывода изображения на поверхность объекта Graphics. В строке кода rg1.Xor(rg2) вместо операции Xor можно применять операторы Complement, Exclude или Intersect. Каждый раз будет создаваться новая комбинация областей.
Заключение
Конечно, РІРѕРїСЂРѕСЃ программирования РІ. NET CF слишком велик, чтобы можно было рассмотреть его РІ РѕРґРЅРѕР№ главе. РњС‹ только слегка познакомились СЃ этим масштабным нововведением Microsoft Рё рассмотрели только РѕРґРёРЅ язык VB.NET. Впрочем, благодаря общей системе типов Рё сближению синтаксиса, изучение программирования РЅР° C# РЅРµ составит труда. Достаточно сказать, что РІ сети Рнтернет уже есть сайт, РЅР° котором можно транслировать программу, написанную РЅР° VB.NET РІ ее эквивалент РЅР° C#.
Глава 7 Рнструменты Рё библиотеки сторонних производителей
Поскольку практически РІСЃРµ программы, которые Р±СѓРґСѓС‚ рассмотрены РІ данном разделе, РЅРµ имеют официальных дистрибьюторов Рё РЅРµ распространяются РЅР° CD-ROM, описание каждой программы будет начинаться СЃ адреса сайта разработчика РІ Рнтернете. Если таковой адрес отсутствует (что, Рє сожалению, случается), это значит, что программу можно найти Рё загрузить РЅР° СЃРІРѕР№ компьютер РЅР° РѕРґРЅРѕРј РёР· сайтов, которые приведены РІ следующем СЃРїРёСЃРєРµ.
? http://www.pocketgear.com
? http://www.hpc.ru
? http://www.ladoshki.com
? http://www.freewareppc.com
? http://www.pocketpcsoft.net
Среды и языки программирования для Pocket PC
Basic4PPC
Рто как раз тот самый случай, РєРѕРіРґР° трудно найти сайт производителя хорошей программы. Автору РЅРµ удалось найти сайт фирмы Anywhere Software. РќРѕ саму программу можно загрузить СЃ сайта www.pocketgear.com.
Программа Basic4PPC совмещает возможности обычного языка Basic и преимущества визуального дизайна Microsoft Visual Basic. Для работы программы необходима среда. NET CF.
Функционально среда разработки весьма ограниченна. Отсутствует взаимодействие СЃ COM Рё ActiveX, загрузка Рё использование динамических библиотек, нельзя обращаться Рє системным функциям Windows CE или использовать графику. Ртот язык поддерживает только элементарные математические возможности, операции СЃРѕ строками, файлами, СЃ формами Рё элементами управления.
Программа состоит из трех основных частей.
? Run-time среда Basic4ppcRunner для выполнения скомпилированных программ.
? Среда Basic4ppc для создания программ на устройстве Pocket PC.
? Среда Basic4ppcDesktop для создания программ на рабочей станции.
Run-time среда и среда для создания программ на рабочей станции могут использоваться без всяких ограничений. Однако ядро программы и среда для создания приложений на Pocket PC обладают ограниченной функциональностью. Среда работает только 10 дней и не позволяет создавать скомпилированные программы. Не могут быть созданы скомпилированные приложения и в настольном варианте до тех пор, пока вы пользуетесь свободно распространяемой версией.
Не стоит искать в сети серийных номеров для данного продукта. Автор программы не распространяет полнофукнциональную версию. Если же понадобится ею обзавестись, то следует обратиться на сайт www.pocketgear.com и заплатить около 18 долларов, после чего вам вышлют полнофункциональную версию программы.
В обмен на довольно ограниченные возможности языка (отладки там тоже нет) вы получаете довольно легкую и быструю среду, в которой можно разрабатывать приложения как на самом Pocket PC, так и на настольном компьютере.
На настольном компьютере среда выглядит так, как показано на рис. 7.1.
Рис. 7.1. Среда разработки Basic4ppc на настольном компьютере.
Вид среды на Pocket PC приведен на рис. 7.2.
Рис. 7.2. Среда разработки Basic4ppc на устройстве Pocket PC.
РџСЂРё помощи этой среды разработки можно создавать РІ ней простейшие калькуляторы, записные книжки или примитивные РёРіСЂС‹. РќРѕ программировать РІ полном смысле этого слова нельзя. Рту среду можно использовать РЅР° уроках информатики как демонстрацию возможностей программирования для людей, которые РЅРёРєРѕРіРґР° РЅРµ Р±СѓРґСѓС‚ программировать. Рзучать что-либо РІ этой среде невозможно РёР·-Р·Р° сильно урезанных возможностей языка.
NSBasic
Сайт разработчика можно найти по адресу www.nsbasic.com/ce.