Этап установки свойств элементов
Этап создания пользовательского интерфейса программы
Пример 2.
Условие: Ввести N элементов массива. Необходимо:
– выдать сообщение об ошибке, если количество элементов массива превышает 50;
– посчитать произведение отрицательных элементов и отобразить результат;
– определить максимальный элемент в массиве и отобразить его номер.
Решение.
1. Создадим новый проект File (Файл) – New Project (Новый проект и выберем новый проект Standard EXE.
На экране монитора отобразится новая форма Form1.
2. Создадим пользовательский интерфейс программы.
Используя Toolbars (Панель элементов управления), расположим на форме следующие объекты: 3 элемента метка (Label), 1 элемент кнопка (CommandButton) и 1 элемент текстовое поле (TextBox):
В примере 1 мы использовали возможность установки свойств элементов на этапе разработки приложения. В этой задаче сделаем по другому – свойства элементов определим непосредственно во время выполнения приложения.
Для этого надо использовать событие, который предшествует открытию формы (т.е. перед тем, как форма станет видимой для пользователя) – Load.
|
|
3. Щелкнем два раза на форме и запишем обработчик события Load.
Private Sub Form_Load()
Form1.Caption = "Пример 3"
Label1.Caption = "Кол-во элементов массива"
Text1.Text = ""
Command1.Caption = "Ввести элементы и выполнить расчет"
Label2.Caption = ""
Label3.Caption = ""
End Sub
Можно посмотреть, что получилось: для этого надо запустить проект (F5 или Run).
4. Запишем программный код для обработчика события при нажатии на кнопку Command1. По условию задачи, при нажатии на эту кнопку необходимо ввести элементы массива и сделать их обработку.
При описании массива зададим количество элементов в нем не более 50. Нумерацию элементов массива начнем с 1. Ввод элементов массива будем осуществлять, используя диалоговое окно InputBox.
Полученные результаты выведем, используя элементы Label.
Запрос на выполнение программы "еще раз" выполним, используя диалоговое окно MsgBox.
Следующий программный код реализует решение исходной задачи (после знака ' записан комментарий).
Option Explicit 'устанавливает обязательное описание типов переменных
Option Base 1 'устанавливает нумерацию элементов массива с 1
Private Sub Command1_Click()
'Описание переменных
Dim Mas(50) As Single
Dim KolElMas As Integer
Dim i As Integer
Dim Sum As Long
Dim MaxEl As Single
Dim NomerMaxEl As Integer
Dim Rez As Variant
'Определение размера массива для работы
'простейшая проверка
If Text1.Text = "" Or Val(Text1.Text) > 50 Then
MsgBox ("Размерность массива не задана или превышает 50")
Text1.Text = ""
GoTo LB
End If
'кол-во элементов вводим через Text1.Text
KolElMas = Val(Text1.Text)
'ввод элементов массива
|
|
For i = 1 To KolElMas
Mas(i) = Val(InputBox(Str(i) + " элемент массива", "Ввести элементы", 0))
Next i
'при выполнении конструкции For i... Next i окно приложения имеет следующий вид
'Решение задачи
Sum = 0
MaxEl = -1E+38
NomerMaxEl = 0
For i = 1 To KolElMas
If Mas(i) < 0 Then Sum = Sum + Mas(i)
If Mas(i) > MaxEl Then
NomerMaxEl = i
End If
Next i
'Вывод результата
Label2.Caption = "Сумма отрицательных элементов = " + Str(Sum)
Label3.Caption = "Номер максимального элемента = " + Str(NomerMaxEl)
'Новая задача
Rez = MsgBox("Еще раз?", vbYesNo, "Задача решена.")
'вид диалогового окна
Select Case Rez
Case vbYes 'очистка предыдущих результатов
Text1.Text = ""
KolElMas = 0
Sum = 0
NomerMaxEl = 0
Label2.Caption = ""
Label3.Caption = ""
Case vbNo 'выход из программы
End
End Select
LB:
End Sub