47053 (566437)
Текст из файла
Цель работы: изучение возможностей создания MDI – приложений, записи информации в файлы и использование технологии OLE при работе с приложениями MS Office
Задание 1. Разработайте MDI – приложение, позволяющее вводить информацию о студентах: фамилия, имя, факультет, группа (в качестве дочерней формы можно использовать разработанное приложение в задании 4 лабораторной работы 5 – 6). Приложение должно обеспечивать возможность выводить данные о выбранном студенте в существующую дочернюю форму или создавать для каждого студента свою форму.
-
Запускаем Visual Basic 6.0. Выбираем “StandartEXE”.
-
Добавляем в проект MDI - форму. Для этого открываем меню «Проект» → «Добавить MDI - форму»
-
У Form1 устанавливаем значение свойства Child равным True.
-
Создаем меню для MDI - формы, состоящее из пунктов «Добавить форму», «Добавить студента», «Выход» и «Вид окон».
-
Также добавляем в проект модуль.
Код для 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
End Sub
Код для Модуля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
If MsgBox("Добавить еще студента???", 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
End Sub
Запускаем приложение (рис.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 интегрированного пакета MS OFFICE.
Добавляем в проект пункт меню «Экспортировать в Excel» (для MDI – формы). Подключаем к Visual Basic 6.0 библиотеку объектов Excel. Для этого открываем меню «Проект» → «Информация». Выбираем Microsoft Excel 11.0 Object Library.
Для события 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-приложения позволяют использовать несколько экземпляров одной и той же формы, что увеличивает производительность и гибкость программ.
Также были изучены основные приемы работы с записью данных в файл, а также экспорт данных в приложения Microsoft Office, на примере MS Excel интегрированного пакета MS Office.
Характеристики
Тип файла документ
Документы такого типа открываются такими программами, как Microsoft Office Word на компьютерах Windows, Apple Pages на компьютерах Mac, Open Office - бесплатная альтернатива на различных платформах, в том числе Linux. Наиболее простым и современным решением будут Google документы, так как открываются онлайн без скачивания прямо в браузере на любой платформе. Существуют российские качественные аналоги, например от Яндекса.
Будьте внимательны на мобильных устройствах, так как там используются упрощённый функционал даже в официальном приложении от Microsoft, поэтому для просмотра скачивайте PDF-версию. А если нужно редактировать файл, то используйте оригинальный файл.
Файлы такого типа обычно разбиты на страницы, а текст может быть форматированным (жирный, курсив, выбор шрифта, таблицы и т.п.), а также в него можно добавлять изображения. Формат идеально подходит для рефератов, докладов и РПЗ курсовых проектов, которые необходимо распечатать. Кстати перед печатью также сохраняйте файл в PDF, так как принтер может начудить со шрифтами.















