Циклы и таймеры
Создание сложных циклов For ... Next
Переменная-счетчик в цикле For...Next может стать мощным инструментом вашей программы. При некотором воображении вы можете использовать ее для создания в ваших циклах нескольких полезных последовательностей чисел. Чтобы создать цикл с шаблоном счетчика, отличным от 1, 2, 3, 4 и т.д., вы можете указать в цикле различные начальные значения, а затем использовать ключевое слово Step для увеличения счетчика на различные интервалы. Например, код
Dim i As Integer Dim Wrap As String Wrap = Chr(13) & Chr(10) For i = 5 To 25 Step 5 TextBox1.Text = TextBox1.Text & "Строка " & i & Wrap Next i
отобразит в текстовом поле следующую последовательность номеров строк:
Строка 5 Строка 10 Строка 15 Строка 20 Строка 25
Если вы объявите i как переменную с плавающей точкой одинарной или двойной точности, вы сможете указать в цикле десятичные значения. Например, цикл For...Next
Dim i As Single Dim Wrap As String Wrap = Chr(13) & Chr(10) For i = 1 To 2.5 Step 0.5 TextBox1.Text = TextBox1.Text & "Строка " & i & Wrap Next i
отобразит в текстовом поле следующие номера строк:
Строка 1 Строка 1.5 Строка 2 Строка 2.5
В дополнение к отображению переменной-счетчика, вы можете использовать этот счетчик для установки свойств, вычисления значений или обработки файлов. В следующем упражнении показано, как можно использовать счетчик для открытия значков Visual Basic, которые хранятся на вашем жестком диске в файлах, содержащих в своих именах числа. Такие файлы можно найти в папке c:\program files\microsoft visual studio.net 2003\common7\graphics\icons\misc.
Открытие файлов с помощью цикла For ... Next
- В меню File (Файл) укажите на New (Создать), а затем щелкните на Project (Проект). Появится диалоговое окно New Project (Создать проект).
- В папке c:\vbnet03sbs\Гл.7 создайте новый проект Windows Application (Приложение Windows) на Visual Basic с именем My For Loop Icons. Будет создан новый проект, и в Windows Forms Designer (Конструктор Windows Forms) появится пустая форма.
- Щелкните в окне области элементов на элементе управления PictureBox, расположенном на закладке Windows Forms, а затем нарисуйте в центре верхней половины формы объект вывода изображения средних размеров.
- Щелкните в области элементов на элементе управления Button, а затем нарисуйте под полем вывода изображений широкую кнопку (чтобы уместился длинный текст).
-
Установите для этих двух объектов следующие свойства:
- Чтобы вывести на экран процедуру события для кнопки Показать четыре рожицы, дважды щелкните на этой кнопке. В Редакторе кода появится процедура события Button1_Click.
-
Введите следующий цикл For...Next:
Dim i As Integer For i = 1 To 4 PictureBox1.Image = System.Drawing.Image.FromFile_ ("c:\vbnet03sbs\Гл.7\face0" & i & ".ico") MsgBox("Щелкните здесь, чтобы посмотреть следующую рожицу.") Next
Совет. Метод FromFile в этой процедуре события слишком длинный, чтобы поместиться в одной строке этой книги, так что я разбил его на две с помощью пробела и символа продолжения строки (_). Вы можете использовать этот символ в вашей программе везде, за исключением строковых выражений.
Для загрузки четырех значков из файлов, расположенных в папке c:\vbnet03sbs\Гл.7 на вашем жестком диске, этот цикл использует метод FromFile. Имя файла создается с помощью переменной-счетчика и оператора конкатенации, который вы использовали ранее в этой лекции. Код
PictureBox1.Image = System.Drawing.Image.FromFile_ ("c:\vbnet03sbs\Гл.7\face0" & i & ".ico")
для создания четырех корректных имен файлов значков, хранящихся на жестком диске, объединяет путь, имя файла и расширение .ico. В этом примере вы загружаете в поле вывода изображений файлы face01.ico, face02.ico, face03.ico и face04.ico. Этот оператор работает потому, что несколько файлов в папке c:\vbnet03sbs\Гл.7 имеют шаблон имен facexx.ico. Использование этого шаблона позволяет создать для этих имен файлов цикл For...Next.
Примечание. Функция отображения сообщения ( MsgBox ) используется в первую очередь для того, чтобы замедлить работу и позволить вам увидеть, что происходит в цикле For...Next. В нормальном приложении вы, вероятно, не будете использовать такие функции (хотя такая возможность у вас есть).
- Чтобы сохранить изменения, щелкните на кнопке Save All (Сохранить все) на стандартной панели инструментов.
-
Чтобы запустить программу, щелкните на кнопке Start (Начать) на стандартной панели инструментов, а затем на кнопке Показать четыре рожицы. (Готовая программа For Loop Icons лежит в папке c:\vbnet03sbs\Гл.7\For loop icons.) Цикл For...Next загружает в область вывода изображений первую рожицу, а затем отображает окно сообщения.
Примечание. Если Visual Basic выдает сообщение об ошибке, проверьте код программы на предмет опечаток, а затем убедитесь, что файлы значков находятся по указанному вами в программе пути. Если вы установили файлы практических занятий этой книги в папку, отличную от папки по умолчанию, или переместили файлы значков после установки, то путь в этой процедуре события может оказаться неверным.
-
Чтобы показать следующую рожицу, щелкните на кнопке OK. Ваш экран будет выглядеть примерно так.
- Щелкните на кнопке OK еще три раза, чтобы увидеть весь набор рожиц. Если хотите, то можете повторить всю последовательность.
- Когда закончите, щелкните на кнопке Close формы, чтобы выйти из программы. Программа остановится, и вернется среда разработки.