Вставка рисунков в программу.
Иногда для пояснения сути расчёта нужно добавить рисунок. Чтобы поместить рисунок на форму программы можно применить элемент управления Рисунок (Image). Важными свойствами <>(по крайней мере в нашем случае) для данного объекта являются:
<> - Picture................../указать путь к рисунку/;
<> - PictureSizeMode..../выбрать один из трёх вариантов/ (удобно применять вариант <>1 <>- frmPictureModeStretch рисунок подгоняется по размеру окна объекта Рисунок (Image) <>)
И так приступим к доработке примера нашей программы (его можно взять из архива Primer3.rar). Сначала создадим рисунок, например такой:
Открываем проект VBA c нашим примером и увеличив размеры формы программы, поместим элемент управления <> Рисунок (Image).
Установим размер объекта примерно равным размеру нашего рисунка. Переходим в окно "Свойства" и для свойства <> Picture выбираем наш рисунок. А для <>PictureSizeMode выбираем значение <>1 <>- <> frmPictureModeStretch. Отрегулируем размер объекта <> Рисунок (Image) так как Вам нужно.
Рис.3. Рисунок для добавления.
И должно получиться примерно следующее:
Рис. 4. Добавлен рисунок с помощью элемента управления "<> Рисунок "(Image).
<>
<>4. Элемент управления -Кнопка выбора (OptionButton).
Иногда нужно рассчитать по длине провода его сопротивление. И если добавить в нашу программу такую возможность, то можно будет смело завершать данный проект, т.к. основные расчётные возможности программы будут реализованы.
|
|
Сравним две расчётные формулы: где:
Расчёт длины провода - L=S * R / p L- длина провода (м);
Расчёт сопротивления провода - R=L * p / S S- Сечение провода (мм2);
R- Сопротивление провода(Ом);
p- Удельное сопротивление.
Чтобы произвести расчёт сопротивления провода по длине провода достаточно изменить формулу, а переменные для ввода расчётной величины(R) и вывода результата (L) оставить без изменения. Тогда алгоритм расчёта будет следующим:
ЕСЛИ рассчитываем длину провода по заданному сопротивлению ТО:
L=R *S / p, где L -длина провода(М); R -сопротивление(Ом);
ЕСЛИ рассчитываем сопротивление провода по заданной длине ТО:
L=R *p / S, где L - сопротивление(Ом); R - длина провода(М);
На форме нужно поменять пояснительные надписи и заменить рисунок как показано на Рис.5:
Рис. 5. Пояснение изменений на форме.
Для выбора вида расчёта, в нашем случае, идеально подходят элементы управления " <>Кнопка выбора (OptionButton) " и рамка (Frame). Сделаем копию с файла "RRasch22.xls" и переименуем в "RRasch22.xls". Приступаем к доработке. Поместим на форму Рамку и две кнопки выбора, как показано на Рис.6:
Рис. 6. Элементы управления для выбора вида расчёта.
Изменим свойства для кнопок выбора.
|
|
Для OptionButton1 Name= Opb1
Для OptionButton2 Name=Opb2
В процедуре UserForm_Initialize() (в конце)допишем для данных элементов управления код инициализации:
Private Sub UserForm_Initialize()
..............
..............
'***** Начальные установки для "ВЫБОРА ВИДА РАСЧЁТА"
Frame1.Caption = "Что будем рассчитывать?"
Opb1.Caption = "Длину" ' Заголовок элемента
Opb2.Caption = "Сопротивление" ' Заголовок элемента
Opb1.Value = True ' Появится точка выбора
'***************************************************
End Sub
Значение свойства Value, для кнопки выбора, может принимать только значение True или False. При изменении значения свойства Value происходит событие Change(). Для каждой кнопки выбора напишем код программы:
Private Sub Opb1_Click()
If Opb1.Value = True Then
Opb2.Value = False
Label3.Caption = " Длина (M)"
Label1.Caption = "Сопротивление(Ом)"
lblL.Caption = " "
Me.Caption = "Расчёт длины провода."
Else
Opb2.Value = True
End If
'***** Загрузить картинку ******
PathProecta = Application.Workbooks(1).Path & "\" '***** Определяем путь проекта *****
PPic1 = PathProecta + "R01.jpg"
Image1.Picture = LoadPicture(PPic1)
End Sub
Private Sub opb2_Change()
If Opb2.Value = True Then
Opb1.Value = False
Label1.Caption = " Длина(M)"
Label3.Caption = "Сопротивление(Ом)"
lblL.Caption = " "
Me.Caption = "Расчёт сопротивления провода."
Else
Opb1.Value = True
End If
PathProecta = Application.Workbooks(1).Path & "\" '***** Определяем путь проекта *****
|
|
PPic1 = PathProecta + "R02.jpg"
Image1.Picture = LoadPicture(PPic1)
End Sub
Для изменения заголовка на форме проекта нужно изменить в форме свойство Caption.
При обращении к форме применяем обращение:
Me.Caption = "Расчёт сопротивления провода."
Для изменения картинки применяем команду LoadPicture(PPic1), путь к проекту определяем при помощи команды :Application.Workbooks(1).Path. Да приходится обращаться к объекту Workbooks Excel, что бы узнать местонахождение наших картинок:
Рис.7. Расчёт длины провода. Рис. 8. Расчёт сопротивления провода.
А теперь главное - код для расчётов (Добавлено всего четыре строчки!!!):
Private Sub cmdR_Click()
R = TransD(txtR.Value) 'ВВОД
D = TransD(txtD.Value)
'P = 0.0175 ########### ЗАКОМЕНТИРУЕМ ОПРЕДЕЛЕНИЕ КОЭФ.
'***** Р А С Ч Ё Т
S = (3.1415926 * D ^ 2) / 4
If Opb1.Value = True Then ' Добавлено
L = S * R / P
Else 'Добавлено
L = R * P / S ' Добавлено
End If ' Добавлено
'*****************
lblL.Caption = Format(L, "0.000") ' В Ы В О Д
End Sub
Проверить работу программы можно так:
вносим сопротивление, например 1 Ом, диаметр 0.1 мм -получаем результат L=0,449 м.
Переключаем на расчёт сопротивления и вносим ранее полученный результат 0,449 м.
Если результат расчёта 1Ом, то всё выполнено правильно.
Готовый пример для данных изменений здесь:Primer4.rar
|
|
Дата добавления: 2015-12-17; просмотров: 13; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!