Вывод результатов
Одна Надпись (Label) нужна для выдачи заголовка Результаты расчетов. Одна Надпись – для заголовка «К Р f»(вместо трех). Выдачу результатов K, P, f запрограммируемна три Надписи. Еще одна Надпись нужна для выдачи сообщения «Нет решения» в случаях, когда значение Х > 6. Но это сообщение можно выдавать на ту же Надпись, на которой будет записан заголовок Результаты расчетов. Но в этом случае придется запрограммировать выдачу сообщения Нет решения и восстановление заголовка Результаты расчетов в одном и том же элементе управления Надпись Таким образом, всего в этом блоке будет использовано 6 Надписей.
Все элементов управления, которые необходимо построить на форме frmLine, а также их свойства приведены в табл. 4.1.
В режиме выполнения этого приложения форма может выглядеть, например, так, как это изображено на рис. 4.2.
Меню Программы Выход, которые видны вверху после информационной строки, – это меню на MDI – форме, которое было создано при выполнении задания № 2.
Таблица 4.1
Объект | Свойство | Установленное значение |
Label1 | Caption | Введите значение Х: |
(Имя) | lblX | |
Text1 | Text | Пусто (для ввода Х) |
(Имя) | txtX | |
Alignment | 1 – Правая привязка | |
Label2 | Caption | Результаты расчетов |
(Имя) | lblЗагол | |
Label3 | Caption | К P f |
(Имя) | lblKPF | |
Label4 | Caption | Пусто (для выдачи К) |
(Имя) | lblK | |
Alignment | 1 – Правая привязка | |
BorderStyle | 1-Фиксировано один | |
Label5 | Caption | Пусто (для выдачи Р) |
(Имя) | lblP | |
Alignment | 1 – Правая привязка | |
BorderStyle | 1-Фиксировано один | |
Label6 | Caption | Пусто (для выдачи f) |
(Имя) | lblF | |
Alignment | 1 – Правая привязка | |
BorderStyle | 1-Фиксировано один | |
Command1 | (Имя) | cmdВычислить |
Caption | Вычислить | |
Command2 | (Имя) | cmdEnd |
Caption | Выход |
Написание программного кода
Для события Click кнопки cmdВычислить (<Вычислить>) напишите следующий код:
Private Sub cmdВычислить_Click()
Dim X As Single, k As Single, blnДалее As Boolean
‘ Переменные р и f можно не вводить, а сразу рассчитать по формулам
‘ их значения и присвоить их этикеткам lblP и lblF
‘ Булевская переменная blnДалее введена вместо переменной В,
‘ которая используется в блок-схеме
X = Val(Text1.Text)
blnДалее = True
If X > 2 And X <= 6 Then
k = (2 * X ^ 2 + Exp(X)) / 2 / X
ElseIf X > 6 Then
k = 3 * X + 4 * (Cos(X)) ^ 2
Else
blnДалее = False
If blnДалее Then ‘
lblK.Caption = FormatNumber (k, 4)
‘ ниже не приводим Caption и с помощью функции FormatNumber
‘ выдаем для вещественных чисел 4 знака после запятой
lblP = FormatNumber((2 * X + k) / k ^ 2, 4)
lblF = FormatNumber(3 * k ^ 2 - 2 * P, 4)
Else
lblЗагол.ForeColor = &HFF& ’устанавливаем красный цвет
lblЗагол.Caption = "Нет решения": blnДалее = True
End If
End Sub
Поскольку сообщение "Нет решения" красными буквами выдаем в надпись lblЗагол, то при вводе нового значения Х следует почистить этикетки lblK, lblP, lblF от прежних результатов и для этикетки lblЗагол восстановить надпись "Результаты расчетов" буквами черного цвета. Чтобы это происходило, записываем для события Change (Изменение) текстового поля txtX следующую процедуру:
Private Sub txtX_Change()
lblK.Caption = ""
lblP.Caption = ""
lblF.Caption = ""
lblЗагол.ForeColor = &H0& ‘восстанавливаем черный цвет текста
lblЗагол.Caption = "Результаты расчетов"
End Sub
Дата добавления: 2015-02-05; просмотров: 1081;