Автор работы: Пользователь скрыл имя, 14 Января 2014 в 12:16, курсовая работа
Целью моего курсового проекта является разработка приложения на языке про-граммирования Visual Basic, предназначенного для отображения графика функции, по-строенного в среде Microsoft Excel в соответствии со значениями параметров функции, области и шага построения графика функции, определенными в пользовательском интер-фейсе приложения Visual Basic. Работа с объектами, представленными компонентами ActiveX, выполняется по общей схеме: 1. Переменной присваивается ссылка на объект. 2. Создается программный код, использующий методы, свойства и события объекта. 3. По окончании работы объект освобождается.
ВВЕДЕНИЕ 5
1. ОПИСАНИЕ ЭЛЕКТРОННОЙ ТАБЛИЦЫ 8
2. ОПИСАНИЕ ПОЛЬЗОВАТЕЛЬСКОГО ИНТЕРФЕЙСА 9
3. ПРИЛОЖЕНИЕ 1 9
ЛИТЕРАТУРА 22
Dim c As Excel.Workbook 'переменная объекта для электронной книги
Dim b As Excel.Worksheet, k As Excel.Worksheet 'переменная обьекта для страницы электронной книги
Dim road As String 'переменная в которую вносится имя текущей папки
Dim kod As Integer 'переменные используемые для проверки на ошибки
Private Sub proverka() 'процедура проверки на возможные ошибки
Dim a As Double, d As Double, e As Double
On Error GoTo oshibka
a = Text5.Text 'начальное значение диапазона
d = text6.Text 'в переменную вносится конечное значение диапазона, вводимое пользователеконечное значение диапазона
e = Text7.Text 'шаг построения
kod = 0 'начальное значение кода ошибки 0
If Val(Text2.Text) <= 0 Then 'если в поле ввода размера шрифта введено значение меньше 0
MsgBox "Введите число больше нуля в поле ввода размера шрифта", vbOKOnly, "Ошибка!" 'вывести сообщение об ошибке
kod = 1 'код ошибки становится равным 1, т.е. допущена ошибка
End If 'конец проверки условия
If (a > d) And (e > 0) Then 'если начальное значение больше конечечного при положительном шаге
MsgBox "При положительном шаге начальное значение должно быть меньше конечного!", vbOKOnly, "Ошибка!" 'выводим сообщение об ошибке
kod = 1 'код ошибки становится равным 1, т.е. допущена ошибка
End If 'конец проверки условия
If (a < d) And (e < 0) Then 'если при отрицательном шаге начальное значение меньше конечного
MsgBox "При отрицательном шаге
начальное значение должно
kod = 1 'код ошибки становится равным 1, т.е. допущена ошибка
End If 'конец проверки условия
If (a = d) Then 'если начально и конечное значения диапазона совпадают
MsgBox "Начальное и конечное значения диапазона совпадают", vbOKOnly, "Ошибка!" 'выводим сообщение об этом
kod = 1 'код ошибки принимает значение 1, т.е. ошибка допущена
End If 'конец проверки условия
If e = 0 Then 'Если в поле ввода шага введен 0
MsgBox "Введите число, отличное от нуля в поле ввода шага", vbOKOnly, "Ошибка!" 'вывести сообщение об ошибке
kod = 1 'код ошибки становится равным 1, т.е. допущена ошибка
End If 'конец проверки условия
For i = 0 To 1 'цикл проверки параметров a,b
If (Text1(i).Text <> "0") And (Val(Text1(i).Text) = 0) Then 'если в окошки ввода параметров введена буква
kod = 1 'код ошибки принимает значение 1, т.е. ошибка допущена
MsgBox "Введите число в поле ввода параметров построения", vbOKOnly, "Ошибка!" 'вывести сообщение об этом
End If 'конец проверки условия
Next 'переход к следующему окошку ввода параметров
If Abs(Val(d) - Val(a)) <= 2 * Val(e) Then 'если в диапазон попадает 1 или менее 1 значений то
MsgBox "Диапазон не должен состоять из начального и конечного значений!", vbOKOnly, "Ошибка!" 'выводим сообщение об ошибке
kod = 1 ''код ошибки принимает
End If 'конец проверки условия
Exit Sub
oshibka:
MsgBox "Введите число в поле ввода параметров построения", vbOKOnly, "Ошибка!" 'вывести сообщение об этом
kod = 1 'код ошибки принимает значение 1, т.е. ошибка допущена
End Sub 'конец процедуры поверки на ошибки
Private Sub Command1_Click() 'процедура нажатия кнопки "изменить график"
proverka 'проверяем введенные данные на наличие ошибок: если ошибки есть то kod=1, если ошибок нет, то kod=0
If kod = 0 Then 'если ошибка не допущена
c.Application.Run "'график1.xls'!диап" 'запускаем
макрос для изменения
OLE1.Update 'обновить график в окне обьекта OLE1
OLE1.Visible = True 'обьект OLE1 сделать видимым
End If 'конец проверки условия
End Sub 'конец процедуры нажатия кнопки "изменить график"
Private Sub Command2_Click()
proverka 'проверяем введенные данные на наличие ошибок: если ошибки есть то kod=1, если ошибок нет, то kod=0
If kod = 0 Then 'если ошибка не допущена
c.Application.Run "'график1.xls'!изм_формY"
'запускаем макрос для
OLE1.Update 'обновить график в окне обьекта OLE1
OLE1.Visible = True 'обьект OLE1 сделать видимым
End If 'конец проверки условия
End Sub
Private Sub Form_Load() 'процедура загрузки формы
road = CurDir + "\график1.xls" 'в переменную
записываем адрес эл.таблицы "
OLE1.SourceDoc = road 'св-ву SourceDoc обьекта OLE1 присваиваем адрес эл.таблицы "график1.xls"
OLE1.CreateLink (road) 'создаем связь между обьектом OLE1 и эл.таблицей "график1.xls"
Set c = GetObject(road) 'связываем объектную
переменную с электронной
Set b = c.Worksheets(1) 'переменная связывается с первым листом электронной книги
j = 3 'переменная содержащая в себе номер строки эл.таблицы принимает значение 3
For i = 0 To 1 'в массив эл-тов TextBox,
в который записываются
Text1(i) = Val(b.Cells(j, 3).Value) 'записываются данные из ячеек C3,C4 соответственно
j = j + 1 'увеличиваем номер строки
для перехода к следующей
Next 'переходим к следующему эл-ту TextBox в массиве
Text2.Text = b.Cells(1, 1).Value 'в окошко ввода
размера шрифта заносим
Text5.Text = b.Cells(4, 7).Value 'в окошко ввода нач. знач. диапазона заносим значения из ячейки G4
text6.Text = b.Cells(5, 7).Value 'в окошко ввода
конечного значения вводим
Text7.Text = b.Cells(7, 7).Value 'в окошко ввода шага построения вводим содержимое ячейки G7
Option1(0).Value = True
Option1(3).Value = True
proverka 'проверяем введенные данные на наличие ошибок: если ошибки есть то kod=1, если ошибок нет, то kod=0
If kod = 0 Then 'если ошибка не допущена
c.Application.Run "'график1.xls'!диап" 'запускаем макрос для изменения диапазона построения
c.Application.Run "'график1.xls'!изм_формY"
'запускаем макрос для
OLE1.Update 'обновить график в окне обьекта OLE1
OLE1.Visible = True 'обьект OLE1 сделать видимым
End If 'конец проверки условия
End Sub 'конец процедуры загрузки формы
Private Sub Option1_Click(Index As Integer)
If Option1(0).Value = True Then 'если текущая радиокнопка включена
b.Cells(2, 7) = "Arial" 'то в ячеку B7 заносим текущий наименование шрифта
End If 'конец проверки условия
If Option1(1).Value = True Then 'если текущая радиокнопка включена
b.Cells(2, 7) = "Tahoma" 'то в ячеку B7 заносим текущий наименование шрифта
End If 'конец проверки условия
If Option1(2).Value = True Then 'если текущая радиокнопка включена
b.Cells(2, 7) = "Times New Roman" ' то в ячеку B7 заносим текущий наименование шрифта
End If 'конец проверки условия
If Option1(3).Value = True Then 'если текущая радиокнопка включена
b.Cells(3, 7) = "обычный" ' то в ячеку С7 заносим текущий начертание шрифта
End If 'конец проверки условия
If Option1(4).Value = True Then 'если текущая радиокнопка включена
b.Cells(3, 7) = "полужирный" 'то в
ячеку С7 заносим текущий
End If 'конец проверки условия
If Option1(5).Value = True Then 'если текущая радиокнопка включена
b.Cells(3, 7) = "курсив" 'то в ячеку С7 заносим текущий начертание шрифта
End If 'конец проверки условия
OLE1.Visible = False 'обьект OLE1 сделать невидимым
End Sub
Private Sub Text1_Change(i As Integer) 'процедура изменения параметров a,b
j = i + 3 'номер строки в столбце
C для определения значения
b.Cells(j, 2).Value = Val(Text1(i).Text) 'в ячейку в столбце С заносим значение текущего параметра из массива
OLE1.Visible = False 'обьект OLE1 сделать невидимым
End Sub 'конец процедуры изменения значений параметров
Private Sub Text2_Change()
b.Cells(1, 1).Value = Text2.Text 'в ячейку А1
заносим текущее значения
OLE1.Visible = False 'обьект OLE1 сделать невидимым
End Sub
Private Sub Text5_Change() 'процедура изменения начального значения диапазона
b.Cells(4, 7).Value = Val(Text5.Text) 'в ячейку G4 заносим
значение введенного
OLE1.Visible = False 'обьект OLE1 сделать невидимым
End Sub 'конец процедуры измеения начального значения диапазона
Private Sub text6_Change() 'процедура изменения конечного значения диапазона
b.Cells(5, 7).Value = text6.Text 'в ячейку G5 заносим
содержимое окошка ввода конечн
OLE1.Visible = False 'обьект OLE1 сделать невидимым
End Sub 'конец процедуры ввода
Private Sub Text7_Change() 'процедура изменения шага построения
b.Cells(7, 7).Value = Text7.Text ' в ячейку G7 заносим
введенное значение шага постро
OLE1.Visible = False 'обьект OLE1 сделать невидимым
End Sub 'конец процедуры изменения шага построения
Приводится изображение
Рис. 3.1. Пользовательский интерфейс после запуска приложения.
Рис. 3.2. Пользовательский интерфейс после изменения параметра (изменение формата в названии оси Х).
В программе предусмотрены
Программа создаваемая в среде VB в процессе проектирования приложения, основана на модульном принципе.
Все объекты элементов управления размещаются в объектах – формах (Forms). Форма представляет собой окно, на котором размещаются управляющие элементы (компоненты). Форма обеспечивает создание графического интерфейса разрабатываемого приложения. Для каждой формы, проектируемой в приложении, VB автоматически создает отдельный модуль, в который пользователь может ввести собственный код, создавая обработчики различных событий. Именно в модулях и осуществляется программирование задачи.
Проект – это разрабатываемое на языке программирования приложение.
Проект включает в себя не только форму с размещенными на ней управляющими элементами (объектами), но и программные модули событийных процедур, которые описывают поведение объектов и взаимодействие объектов между собой.
При выполнение курсовой работы был изучен метод Крамера Проанализирована погрешность при их использование на практике. Также в процессе выполнения работы были закреплены знания по информатике, практические навыки работы на персональном компьютере и разработке пользовательских приложений с использованием языков программирования высокого уровня и современных компьютерных технологий обработки информации, а также навыки в составлении текстовой документации.
ЛИТЕРАТУРА