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

Тут можно читать бесплатно Владимир Волков - Программирование для карманных компьютеров. Жанр: Компьютеры и Интернет / Программирование, год неизвестен. Так же Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте «WorldBooks (МирКниг)» или прочесть краткое содержание, предисловие (аннотацию), описание и ознакомиться с отзывами (комментариями) о произведении.
Владимир Волков - Программирование для карманных компьютеров

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

Прочтите описание перед тем, как прочитать онлайн книгу «Владимир Волков - Программирование для карманных компьютеров» бесплатно полную версию:
Эта книга предназначена для того, чтобы читатель смог быстро научиться создавать мощные и эффективные приложения для наладонных компьютеров Pocket PC. Рынок программ для карманных компьютеров сейчас бурно развивается, и именно в этой отрасли программист-одиночка может успешно соперничать с большими корпорациями, которые создают программное обеспечение. Прочитав эту книгу, читатель сможет уверенно и быстро разрабатывать достаточно сложные приложения для Pocket PC. Огромное количество разнообразных примеров позволит быстро совершенствоваться и развиваться, обогащая свой опыт работы.Книга предназначена для начинающих программистов.

Владимир Волков - Программирование для карманных компьютеров читать онлайн бесплатно

Владимир Волков - Программирование для карманных компьютеров - читать книгу онлайн бесплатно, автор Владимир Волков

Rem 11

intInt = 10000

For intCount = 0 To intInt

On Error Resume Next

List1.AddItem strAr(intCount)

If Err.Number Then

Err.Clear: Exit For

End If

Next

Rem 12

Dim intCount2 As Integer

For intCount = 1 To List1.ListCount

For intCount2 = intCount + 1 To List1.ListCount

If (StrComp(List1.List(intCount), List1.List(intCount2), vbTextCompare) = 0)

Then

List1.RemoveItem (intCount2): intCount2=intCount2-1

End If

Next

Next

End If

End Select

End Sub

Будут рассмотрены те блоки кода, где установлены комментарии.

1) На экран выводится диалог открытия файла.

2) Если диалог открытия файла вернул имя файла, то происходит переход к блоку 3.

3) Открывается файл с переданным именем при помощи объекта File.

4)В Рнициализируется переменная intText, Рё РІ нее считывается количество строк РІ файле.

5) После прохождения файла до конца при помощи функции LineInputString его необходимо открыть заново.

6) Считывается «английская» часть файла одной строкой в переменную varEnText.

7) Первая русская фраза выводится в текстовое поле Label1, а соответствующая ей английская фраза – в текстовое поле Label2.

8) Счетчик фраз увеличивает свое значение.

9) Пробелы справа и слева удаляются.

10) Строка varEnText разбивается на слова, которые помещаются в массив strAr. Массив динамический, поэтому нельзя сразу сказать, сколько в нем элементов.

11) Значение intInt предполагает, что в массиве не более 10 000 элементов. Каждый элемент массива заносится в список List1 до тех пор, пока не будет достигнут конец массива. Следующий шаг вызывает исключительную ситуацию, которая перехватывается при помощи блока On Error Resume Next. Проверка значения Err.Number позволяет определить наличие исключительной ситуации, вызов Err.Clear очищает флаг ошибки, а оператор Exit For завершает цикл.

12) В последнем блоке кода из списка удаляются все повторяющиеся слова.

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

30. Щелчок стилусом на слове в списке добавляет это слово к предложению, составляемому в поле Label3. Соответствующий код приведен в листинге 3.21.

Листинг 3.21

Private Sub List1_Click()

varStrng = Label3.Caption

Label3.Caption = Label3.Caption + List1.List(List1.ListIndex) + " "

End Sub

При этом предыдущее содержимое Label3 запоминается в переменной varStrng.

31. Кнопка Сброс просто присваивает свойству Caption компонента Label3 пустую строку, как это показано в листинге 3.22.

Листинг 3.22

Private Sub Command2_Click()

Label3.Caption = ""

End Sub

32. Кнопка ? отменяет ввод последнего слова при помощи кода, приведенного в листинге 3.23. Листинг 3.23

Private Sub Command3_Click()

Label3.Caption = varStrng

End Sub

33. Нажатие и отпускание стилуса проверяются на кнопке Подсказка. При нажатии стилусом Label2 выводится поверх Label3, а при отпускании снова перемещается на задний план. Это реализуется при помощи кода, приведенного в листинге 3.24. Листинг 3.24

Private Sub Command4_MouseDown(button, shift, x, y)

Label2.ZOrder vbBringToFront

End Sub

Private Sub Command4_MouseUp(button, shift, x, y)

Label2.ZOrder vbSendToBack

End Sub

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

Перейти на страницу:
Вы автор?
Жалоба
Все книги на сайте размещаются его пользователями. Приносим свои глубочайшие извинения, если Ваша книга была опубликована без Вашего на то согласия.
Напишите нам, и мы в срочном порядке примем меры.
Комментарии / Отзывы
    Ничего не найдено.