Контрольная работа по предмету "Информатика, программирование"


Изучение возможностей создания MDI-приложений (multiple document interface)

Цель работы: изучение возможностей создания MDI – приложений, записи информации в файлы и использование технологии OLE при работе с приложениями MS Office


Задание 1. Разработайте MDI – приложение, позволяющее вводить информацию о студентах: фамилия, имя, факультет, группа (в качестве дочерней формы можно использовать разработанное приложение в задании 4 лабораторной работы 5 – 6). Приложение должно обеспечивать возможность выводить данные о выбранном студенте в существующую дочернюю форму или создавать для каждого студента свою форму.


1) Запускаем Visual Basic 6.0. Выбираем “StandartEXE”.


2) Добавляем в проект MDI - форму. Для этого открываем меню «Проект» → «Добавить MDI- форму»


3) У Form1 устанавливаем значение свойства Child равным True.


4) Создаем меню для MDI- формы, состоящее из пунктов «Добавить форму», «Добавить студента», «Выход» и «Вид окон».


5) Также добавляем в проект модуль.


Код для MDI – формы:


Dim i As Integer


Private Sub New_form_Click()


Dim newform As New Form1


newform.Show


newform.Caption = "Новыйстудент"


End Sub


Private Sub New_student_Click()


add_student


End Sub


Private Sub Exit_Click()


End


End Sub


Private Sub WindowArrange_Click()


MDIForm1.Arrange vbArrangeIcons


End Sub


Private Sub WindowCascade_Click()


MDIForm1.Arrange vbCascade


End Sub


Private Sub WindowTileH_Click()


MDIForm1.Arrange vbTileHorizontal


End Sub


Private Sub WindowTileV_Click()


MDIForm1.Arrange vbTileVertical


End Sub


Коддля Form1:


Private Sub Command1_Click()


Unload Me


EndSub


Код для Модуля1;


Private Type StudentType


fam As String * 30


Name As String * 20


Fac As String * 10


Gru As String * 10


End Type


Public tmp As StudentType


Public arr() As StudentType


Public col As Integer


Sub add_student()


Do


wrk


IfMsgBox("Добавить еще студента???", vbYesNo, "Еще??") = vbNo Then: Exit Do


Loop


End Sub


Sub form_active()


If MDIForm1.ActiveForm Is Nothing Then


Dim tmpfrm As New Form1


tmpfrm.Show


End If


End Sub


Sub wrk()


Dim i As Integer


Dim tmp_str As String


A = MsgBox("Добавить в эту же форму???", vbYesNo, "Куда???")


If A = vbNo Then


Dim tmpfrm As New Form1


tmpfrm.Show


tmpfrm.Caption = "Новый студент"


End If


form_active


Inp_inf_stud tmp


ReDim Preserve arr(col)


arr(col) = tmp


col = col + 1


For i = 0 To 3


With arr(col - 1)


Select Case i


Case 0: tmpstr = .fam


Case 1: tmpstr = .Name


Case 2: tmpstr = .Fac


Case 3: tmpstr = .Gru


End Select


End With


MDIForm1.ActiveForm.List1(i).AddItem tmpstr


Next i


End Sub


Private Sub Inp_inf_stud(ByRef StudentData As StudentType)


Dim s(3) As String


Dim i As Integer


i = 0


Do Until i > 3


Select Case i


Case 0: s(0) = InputBox("Введите фамилию", "Студент")


Case 1: s(1) = InputBox("Введите имя", "Студент")


Case 2: s(2) = InputBox("Введите факультет", "Студент")


Case 3: s(3) = InputBox(“Введите группу", "Студент")


End Select


For n = 0 To 3


If s(n) = "" Then s(n) = "Нетданных"


Next n


With StudentData


Select Case i


Case 0: .fam = s(0)


Case 1: .Name = s(1)


Case 2: .Fac = s(2)


Case 3: .Gru = s(3)


End Select


End With


For n = 0 To 3


s(n) = ""


Next n


i = i + 1


Loop


EndSub


Запускаем приложение (рис.1-3)



Рис.1 MDI – приложение: окна каскадом




Рис.2 MDI – приложение: окна ориентированы вертикально



Рис.3 MDI – приложение: ввод данных


Задание 2. Осуществите запись полученной информации в файл


Добавляем в проект пункт меню «Сохранить все» (для MDI – формы).


Для события save_Clickпишем код:



Private Sub save_Click()


Dim FNamber As Integer


Dim adress As String


Dim i As Integer


Dim k As Integer


FNamber = FreeFile()


adress = InputBox("Введите адрес файла, в котором сохранится информация", "Сохранить как", "E:\student.txt")


Open adress For Random Access Write As FNamber Len = Len(arr(i))


Do


If i = col Then: Exit Do


k = i + 1


Put #FNamber, k, arr(i)


i = i + 1


Loop


Close FNamber


End Sub


Запускаем приложение (рис.4,5)



Рис.4 Сохранение данных в файл




Рис.5 Текстовый файл с данными о студенте


Задание 3.


Запишите данные в рабочий ЛИСТ 1 приложения EXCELинтегрированного пакета MSOFFICE.


Добавляем в проект пункт меню «Экспортировать в Excel» (для MDI – формы). Подключаем к VisualBasic 6.0 библиотеку объектов Excel. Для этого открываем меню «Проект» → «Информация». Выбираем MicrosoftExcel 11.0 ObjectLibrary.


Для события Excel_Click записываем код:


Private Sub Excel_Click()


Dim appl As New Excel.Application


Dim wb As Excel.Workbook


Dim ws As Excel.Worksheets


Set appl = New Excel.Application


appl.Visible = True


Set wb = appl.Workbooks.Add


With wb.Worksheets("Лист1")


Dim i As Integer


Dim j As Integer


For i = 0 To co - 1


For j = 1 To 4


Select Case j


Case 1: .Cells(i + 1, j) = arr(i).fam


Case 2: .Cells(i + 1, j) = arr(i).Name


Case 3: .Cells(i + 1, j) = arr(i).Fac


Case 4: .Cells(i + 1, j) = arr(i).Gru


End Select


Next j


Next i


End With


End Sub


Запускаем приложение (рис.6)



Рис.6 Файл EXCEL с данными о студенте



Вывод:


Выполняя данную лабораторную работу, мы научились создавать MDI- приложения. Используя такое приложение, пользователь может одновременно работать с несколькими документами. MDI-приложения позволяют использовать несколько экземпляров одной и той же формы, что увеличивает производительность и гибкость программ.


Также были изучены основные приемы работы с записью данных в файл, а также экспорт данных в приложения MicrosoftOffice, на примере MSExcel интегрированного пакета MSOffice.



Не сдавайте скачаную работу преподавателю!
Данную контрольную работу Вы можете использовать для выполнения своих заданий.

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :