25. Этот файл нужно добавить к проекту, как это было сделано с файлами рисунков. Русские фразы написаны транслитерацией, поскольку эмулятор не русифицирован. В случае запуска данной программы на корректно русифицированном Pocket PC 2003 русские фразы можно писать кириллицей.
26. Чтобы загрузить файл, нам понадобятся еще две ActiveX библиотеки – File System и Common Dialog. Их нужно добавить в проект, а затем разместить на форме. Библиотека File System при добавлении к проекту создает компоненты File и FileSystem. Компонент FileSystem дает возможность осуществлять манипуляции с файлами и каталогами, такие как создание, удаление, переименование, перемещение, изменение атрибутов. В нашем приложении этот компонент не потребуется, на форме надо разместить только компонент File, который позволяет открыть файл, читать из него и записывать информацию в файл.
27. После размещения этих компонентов на форме нужно добавить объявления переменных в начало модуля, как это показано в листинге 3.19.
Листинг 3.19Option Explicit
Dim intText, intInt, intStep, intCount As Integer
Dim varText, varEnText
Dim varStrng As String
Rem Объявляем переменную и связываем ее с объектом File
Dim flFile As File
Set flFile = File1
Rem Объявляем переменную и связываем ее с объектом диалога
Dim fdOpen As CommonDialog
Set fdOpen = CommonDialog128. Теперь необходимо создать обработчик события щелчка на пункте меню Открыть. Для этого в уже имеющийся обработчик события Private Sub MenuBar1_ MenuClick нужно добавить еще одну секцию Case. Код будет выглядеть так, как показано в листинге 3.20. Листинг 3.20
Private Sub MenuBar1_MenuClick(ByVal Menu As MenuBarLib.MenuBarMenu)
Select Case Menu.Key
Case «itExit»
App.End
Case «itOpen»
Rem 1
fdOpen.ShowOpen
Rem 2
If fdOpen.FileName <> "" Then
Rem 3
flFile.Open fdOpen.FileName, fsModeInput, 1
Rem 4
intText = 0
While Not flFile.EOF
intText = intText + 1
flFile.LineInputString
Wend
Rem 5
flFile.Close
flFile.Open fdOpen.FileName, fsModeInput, 1
Rem 6
For intCount = 1 To intText
varText = flFile.LineInputString
If intCount > intText/2 Then varEnText=varEnText +" "+varText
Next
intStep = 1
flFile.Close
Rem 7
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
Rem 8
intStep = 2
flFile.Close
Dim strAr
Dim strSt As StringRem 9
varEnText = Trim(varEnText)
Rem 10
strAr = Split(varEnText, " ", – 1, vbTextCompare)
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