Чтение онлайн

ЖАНРЫ

Программирование для карманных компьютеров

Волков Владимир

Шрифт:

34. Обработка щелчка на кнопке Принять отличается некоторой сложностью. Надо не только проверить правильность набора фразы и сообщить об этом пользователю, но и перейти к следующей фразе, если предыдущая была набрана удачно. Это реализуется при помощи кода, приведенного в листинге 3.25. Листинг 3.25

Private Sub Command1_Click

If intText <> 0 Then

If StrComp(Trim(Label2.Caption), Trim(Label3.Caption), vbTextCompare) = 0 Then

MsgBox «Ай, малодец! Получилось! Следующая фраза», vbOKOnly

flFile.Open fdOpen.FileName, fsModeInput, 1

For intCount = 1 To intText

varText = flFile.LineInputString

If intCount = intStep Then Label1.Caption = varText

If intCount = intStep + intText / 2 Then Label2.Caption = varText

Next

flFile.Close

Label3.Caption = ""

If intStep > intText / 2 Then

MsgBox

«Вы закончили упражнение», vbOKOnly

App.End

End If

intStep = intStep + 1

Else

MsgBox «He получилось, попробуйте еще раз», vbOKOnly

End If

End If

End Sub

35. На этом этапе приложение уже работает практически полностью. Осталось разобраться с командой меню Редактирование шрифта и его подменю. Весь код реакций на выбор одного из пунктов подменю команды Редактирование шрифта будет помещен в событие MenuBarl_MenuClick и будет обрабатываться при помощи конструкций Case, как это показано в листинге 3.26. Листинг 3.26

Case «itBold»

If mnuFile.Items.Item(1). SubItems(1). Caption = «Полужирный» Then

Label1.FontBold = True

Label2.FontBold = True

Label3.FontBold = True

List1.FontBold = True

mnuFile.Items.Item(1). SubItems(1). Caption = «*Полужирный»

Else

Label1.FontBold = False

Label2.FontBold = False

Label3.FontBold = False

List1.FontBold = False

mnuFile.Items.Item(1). SubItems(1). Caption = «Полужирный»

End If

Case «itItal»

If mnuFile.Items.Item(1). SubItems(2). Caption = «Наклонный» Then

Label1.FontItalic = True

Label2.FontItalic = True

Label3.FontItalic = True

List1.FontItalic = True

mnuFile.Items.Item(1). SubItems(2). Caption = «*Наклонный»

Else

Label1.FontItalic = False

Label2.FontItalic = False

Label3.FontItalic = False

List1.FontItalic = False

mnuFile.Items.Item(1). SubItems(2). Caption = «Наклонный»

End If

Case «it8»

If mnuFile.Items.Item(1). SubItems(3). SubItems(1). Caption = «8» Then

Label1.FontSize = 8

Label2.FontSize = 8

Label3.FontSize = 8

List1.FontSize = 8

mnuFile.Items.Item(1). SubItems(3). SubItems(1). Caption = «*8»

mnuFile.Items.Item(1). SubItems(3). SubItems(2). Caption = «10»

mnuFile.Items.Item(1). SubItems(3). SubItems(3). Caption = «12»

End If

Case «it10»

If mnuFile.Items.Item(1). SubItems(3). SubItems(2). Caption = «10» Then

Label1.FontSize = 10

Label2.FontSize = 10

Label3.FontSize = 10

List1.FontSize = 10

mnuFile.Items.Item(1). SubItems(3). SubItems(1). Caption = "8"

mnuFile.Items.Item(1). SubItems(3). SubItems(2). Caption = «*10»

mnuFile.Items.Item(1). SubItems(3). SubItems(3). Caption = «12»

End If

Case «it12»

If mnuFile.Items.Item(1). SubItems(3). SubItems(3). Caption = «12» Then

Label1.FontSize = 12

Label2.FontSize = 12

Label3.FontSize = 12

List1.FontSize = 12

mnuFile.Items.Item(1). SubItems(3). SubItems(1). Caption = "8"

mnuFile.Items.Item(1). SubItems(3). SubItems(2). Caption = «10»

mnuFile.Items.Item(1). SubItems(3). SubItems(3). Caption = «*12»

End If

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

Поставка приложений eVB

Создание приложений для эмулятора – это, конечно, увлекательное занятие, но рано или поздно приходит момент, когда приложение, опробованное на эмуляторе, необходимо поставить на настоящее устройство. В этой книге не будут рассматриваться многочисленные инструменты сторонних фирм, позволяющие создавать инсталляционные пакеты. Стоит обратить внимание на «штатный» мастер создания пакетов установки, который запускается при помощи команды меню Tools ? Remote Tools ? Application Install Wizard.

После запуска этого мастера нужно выполнить простую последовательность действий.

1. Нажать

кнопку Далее.

2. Указать полный путь к файлу проекта. ebp

3. Указать полный путь к скомпилированному приложению, которое представлено файлом с расширением. vb. Скорее всего, этот файл будет отсутствовать в каталоге проекта. Чтобы он там появился, необходимо выполнить команду File ? Make Project.vb.

4. Указать полный путь к папке, в которой будет создаваться установочный комплект. Если папка с таким именем отсутствует, то она будет создана. В этом примере будет использоваться папка C: \MyInstall.

5. Взвести флажок Arm 1100 (4К) v 3.00.

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

7. Указать, какие дополнительные файлы должны быть установлены вместе с проектом. В рассматриваемом проекте это будут файлы white.bmp, green.bmp, yellow.bmp и phrase.txt. Каждый раз при добавлении одного из этих файлов, будет отображаться диалоговое окно с вопросом Is this a System file? Следует ответить на него отрицательно, и файлы будут установлены в каталог проекта. Если ответить «Да», то соответствующий файл будет установлен в каталог Windows на устройстве. Если создается инсталляционный пакет для Pocket PC 2002, то нужно снять флажок Include Device Runtime in Cab file. В случае создания пакета для Pocket PC 2003 нужно, наоборот, взвести этот флажок, поскольку в операционную систему Pocket PC 2003 не входит VB.

8. Теперь необходимо заполнить 4 поля. В поле Default Install Directory указывается имя каталога, в который будет установлено приложение. Для рассматриваемого случая нужно использовать значение EnPhrase. В поле Application Name указывается имя, под которым приложение будет зарегистрировано на устройстве. Для этого поля тоже нужно использовать значение EnPhrase. В поле Description задается краткое описание проекта. В поле Company Name указывается наименование компании, разработавшей приложение. Приложение будет установлено в каталог, имя которого будет состоять из имени приложения и наименования компании.

9. На завершающем этапе нужно просто нажать кнопку Create Install. На этом создание инсталляционного пакета будет завершено.

Созданный пакет можно будет найти в каталоге C: \MyInstall\CDl. Если установить сейчас приложение на устройство, то оно вряд ли будет работать. Скорее всего, будет отображено сообщение о том, что файл не найден. Все дело в том, что приложение не будет установлено в каталог \Windows\Start Menu\, а в приложении есть прямая ссылка на этот каталог. Именно оттуда загружаются изображения. Это довольно часто встречающаяся проблема для тех, кто начинает программировать на eVB. Решение состоит в том, чтобы переписать указанный фрагмент так, как показано в листинге 3.27.

Вызов функции Арр. Path позволяет получить текущий путь к каталогу, в котором установлено приложение.

Если приложение устанавливается на русифицированный Pocket PC, то можно переписать файл phrase.txt, так чтобы русская его часть была написана кириллицей. После этого нужно заново создать установочный пакет и протестировать его, запустив из каталога C: \MyInstall\CD1 файл Setup.exe.

Листинг 3.27

Dim imLst As ImageList

Set imLst = ImageList1

MsgBox App.Path, vbOKOnly

imLst.Add (App.Path + «\white.bmp»)

imLst.Add (App.Path + «\yellow.bmp»)

imLst.Add (App.Path + «\green.bmp»)

MenuBar1.ImageList = imLst.hImageList

Создание приложения без формы

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

Упражнение 3.7

1. Создать новый проект. Для этого нужно выполнить команду File ? New Project и в окне мастера создания проектов выбрать тип проекта Windows CE Formless Project.

2. После завершения работы мастера будет открыто окно с кодом, в котором всего три строчки, приведенные в листинге 3.28.

Листинг 3.28

Option Explicit

Sub Main

End Sub

3. Проект нужно сохранить в файле с именем FLess.ebp. После этого нужно ввести код, показанный в листинге 3.29. Листинг 3.29

Sub Main

MsgBox «Сообщение из проекта без формы», vbOKOnly

End Sub

Поделиться с друзьями: