Лекция 3: 2 Для создания возможности использования объектов файловой системы нужно подключить библиотеку DLL, содержащую эти объекты: меню Разработать > Ccылки > Microsoft Scriptlet Component (сделать щелчок на соответствующем элементе управления CheckBox). Не могу найти меню Разработать (Develop)>Links и т.д. |
Опубликован: 04.07.2006 | Уровень: для всех | Доступ: свободно
Лекция 3:
Работа с устройствами, папками, файлами
Практическая работа 20. Контрольное задание
- Создать 2 массива (m1(2), m2(2)) данных типа String, создать 3-й массив m3(2), элементы которого получаются попарным склеиванием данных типа String, вводимых в текстовые поля,
- выполнить сравнение (оператор Like ) операнда, вводимого в текстовое поле с шаблоном - элементами массива m3(2),
- записать 6 элементов массивов в файл в 2 строки,
- стартовать процедуру Timer1_Timer () после создания 4-ого массива mf(2),
- сделать переход к форме 2,
- считать все данные из файла по 3 элемента в массив,
- вывести на экран в массив поля списка.
Последовательность действий:
- создать на форме 2 поля списка для вывода массивов m1(2), m2(2) и процедуру Form_Load (),
- создать на форме 2 массива текстовых полей из 2-х элементов для ввода данных и поле List3 для вывода элементов 3-его массива, см. процедуру Command1_Click(),
- создать на форме текстовое поле Text3 для ввода операнда, сравниваемого с шаблоном и поле метки Label1 для вывода результатов сравнения, см. прцедуру Command2_Click(),
- записать данные в файл, см. процедуру Command3_Click(),
- ввести процедуру Timer1_Timer (),
- создать вторую форму и на ней - массив поля списка для вывода результатов считывания данных из файла (см. процедуры Command1_Click() и Command2_Click() второй формы) и 2 командные кнопки,
- ввести код, данный ниже, пояснения даны под комментариями. Для перехода ко второй форме сделать щелчок на первой форме, см. процедуру Form_Click () первой формы.
Form1
(General) (Declarations) Dim j As Integer ' описание переменных для хранения значений операнда и ' шаблона Dim op1 As String, sch As String Dim res As Boolean ' переменная для работы с оператором Like Dim m1(2) As String, m2(2) As String, m3(2) As String Dim a As Integer, b As Integer ' описание вспомогательного массива и переменных, ' используемых для старта процедуры Timer1_Timer() Dim mf(2) As Integer Dim ffa As String, ffb As Integer Private Sub Form_Load() ' создание массивов и вывод его элементов For j = 0 To 1 a = Int(Rnd * 10 + 60): m1(j) = Chr(a): List1.List(j) = m1(j) b = Int(Rnd * 10 + 70): m2(j) = Chr(b): List2.List(j) = m2(j) Next j End Sub Private Sub Command1_Click() ' создание 3-его массива в диалоговом режиме For j = 0 To 1 m3(j) = Text1(j).Text & Text2(j).Text: List3.List(j) = m3(j) Next j ' создание массива, обеспечивающего старт процедуры ' Timer1_Timer() For j = 0 To 1 ffa = m3(j): ffb = Asc("ffa"): mf(j) = ffb Next j End Sub ' работа оператора Like и вывод результатов Private Sub Command2_Click() op1 = Text3.Text ' ввод операнда For j = 0 To 1 sch = m3(j): res = op1 Like sch If res Then Label1.Caption = "ДА": GoTo 300 Next j Label1.Caption = "НЕТ" 300 End Sub Private Sub Command3_Click() ' запись в файл Open "ff.txt" For Output As #1 Write #1, m1(0), m1(1), m2(0) Write #1, m2(1), m3(0), m3(1) Close #1 End Sub ' процедура, обеспечивающая перемещение поля метки после ' создания массива Private Sub Timer1_Timer() Label2.Left = Int(200 * Rnd * mf(0)) Label2.Top = Int(150 * Rnd * mf(1)) End Sub Private Sub Form_Click() Unload Me Form2.Show End Sub
Form2
General Declarations Dim m4(6) As String, j As Integer, i As Integer Dim k1 As String, k2 As String, k3 As String Private Sub Command1_Click() ' чтение из файла по 3 элемента Open "ff.txt" For Input As #1 j = 0 Do While Not EOF(1) Input #1, k1, k2, k3 m4(j) = k1: m4(j + 1) = k2: m4(j + 2) = k3 j = j + 3 Loop Close #1 End Sub Private Sub Command2_Click() ' вывод в массив ListBox For i = 0 To 2 For j = 0 To 1 List1(i).List(j) = m4(2 * i + j) Next j, i End Sub