Logo GenDocs.ru

Поиск по сайту:  

Загрузка...

Басков Н.Н., Лебединская А.Р. Visual Basic for Applications. Учебный практикум - файл 1.doc


Басков Н.Н., Лебединская А.Р. Visual Basic for Applications. Учебный практикум
скачать (808.5 kb.)

Доступные файлы (1):

1.doc809kb.16.12.2011 09:21скачать

1.doc

1   2   3   4   5   6   7   8   9


Файлы последовательного доступа можно сравнить с музыкальными записями на аудиокассете – для поиска нужной песни приходиться перематывать кассету и последовательно её прослушивать. Зато они очень просты и могут обрабатываться любым текстовым редактором.

Для открытия файла используется команда:

^ Open ИмяФайла For РежимРаботы As ДискрипторФайла

РежимРаботы может принимать одно из трёх значений;

  • Output — для записи данных (если информация в файле уже есть, то она в таком случае будет стёрта)

  • Append — для добавления информации в конец файла;

  • Input — для чтения из файла данных.

Для закрытия файла используется команда:

Close # [Список Дескрипторов]

Список Дескрипторов это записанные через запятую идентификаторы тех файлов, которые открыты.

Записать данные в файл, можно используя два способа:

  • Способ Write

  • Способ Print




    • Откройте приложение MS Excel.

    • Выполните команду СервисàМакросРедактор Visual Basic или нажмите <Alt+F11>.

    • Добавьте форму (команда Insert UserForm)

    • Для изменения размеров формы используйте указатель мыши помещённый в правый нижний угол окна Формы(UserForm)

    • Разработайте пользовательский интерфейс, расположив на форме с помощью панели инструментов управления (ViewToolBox), следующие объекты управления: Label (Метка), TextBox (Текстовое поле), CommandButton (Командная кнопка), ListBox (Список).

    • В окне Properties (Свойства) для каждого объекта управления установить свойства, приведённые в таблице 6.


Таблица 6

^ Элемент управления

Свойства

Значения

UserForm

Caption

Последовательный доступ

Label1

Caption

В группе

Label2

Name

lblKolichestvo

Caption




Label3

Caption

Фамилия И О

ListBox1

Name

lstFIO

Label4

Caption

Год рождения

ListBox2

Name

lstGodRozhdenija

Label4

Caption

Адрес

ListBox3

Name

lstAdres

CommandButton1

Name

cmdVvodSpiskaStudentov




Caption

Пуск

CommandButton2

Name

cmdChtenieIzFaila

Caption

Чтение из файла

    • Блок-схема




    • Примерный интерфейс программы может выглядеть так:





    • Код программы:

Dim FIO As String

Dim GodRozhdenija As String

Dim Adres As String

Dim Kolichestvo As Integer

Private Sub cmdVvodSpiskaStudentov_Click()

Open "Spisok.txt" For Output As #1

Kolichestvo = InputBox("Введите количество студентов в группе",”Ввод числа”)

lblKolichestvo.Caption = Str(Kolichestvo)+” человек(а)”

For i% = 1 To Kolichestvo

FIO = InputBox("Введите фамилию студента", "Ввод данных о студенте")

GodRozhdenija = InputBox("Введите год рождения студента", "Ввод данных о студенте")

Adres = InputBox("Введите адрес студента", "Ввод данных о студенте")

Write #1, FIO; GodRozhdenija; Adres

Next

Close #1

End Sub
Private Sub cmdChtenieIzFaila_Click()

Open "Spisok.txt" For Input As #1

Do Until EOF(1)

Input #1, FIO, GodRozhdenija, Adres

lstFIO.AddItem FIO

lstGodRozhdenija.AddItem GodRozhdenija

lstAdres.AddItem Adres

Loop

Close #1

End Sub

    • Перед запуском программы сохраните файл под именем «Произвольный доступ»

    • Составьте список из 10 фамилий студентов вашей группы.



^

3.8. Практическое занятие №8. Файлы с произвольным доступом


Задача.


Ваша группа хранит данные о результатах экзамена в файле с произвольным (прямым) доступом.

  • Создайте произвольный файл по учёту результатов экзаменов. Храните в этом файле фамилию, год рождения, группу и оценку за экзамен. Для образца составьте файл на двадцать человек.

  • Выведите на форму фамилии тех студентов, оценка за экзамен которых «4» и «5»


Файлы произвольного доступа – это провозвестники файлов баз данных. В этих типах файлов применяется особая структура данных – пользовательский тип данных. Он содержит компоненты разного типа данных.

Структуру данных (пользовательский тип данных) называют записью, а компоненты этой структуры – полями записи.

База данных – это множество единообразных записей.
Для открытия файла используется оператор

^ Open ИмяФайла For Random As #ДискрипторФайла Len=ДлинаЗаписи
Запись в файл

Put # ДискрипторФайла, НомерЗаписи, ИмяПеременной
Чтение из файла

Get # ДискрипторФайла, НомерЗаписи, ИмяПеременной


    • Откройте приложение MS Excel.

    • Выполните команду СервисàМакросРедактор Visual Basic или нажмите <Alt+F11>.

    • Добавьте форму (команда Insert UserForm)

    • Для изменения размеров формы используйте указатель мыши помещённый в правый нижний угол окна Формы(UserForm)

    • Разработайте пользовательский интерфейс, расположив на форме с помощью панели инструментов управления (ViewToolBox), следующие объекты управления: Label (Метка), TextBox (Текстовое поле), CommandButton (Командная кнопка), ListBox (Список).

    • В окне Properties (Свойства) для каждого объекта управления установить свойства, приведённые в таблице 7.

Таблица 7

^ Элемент управления

Свойства

Значения

UserForm

Caption

Произвольный доступ

Label1

Caption

В группе

Label2

Name

lblKolichestvoZapisei

Label3

Caption

Фамилия И О

ListBox1

Name

lstFIO

Label4

Caption

Группа

ListBox1

Name

lstGroup

Label5

Caption

Оценка

ListBox1

Name

lstOtsenka

CommandButton1

Name

cmdVvodSpiskaStudentov

Caption

Ввод

CommandButton2

Name

cmdChtenieIzFaila

Caption

Чтение из файла




    • Примерный интерфейс программы может выглядеть так:



База данных содержит всего одну таблицу — сведения о студентах. Каждая строка этой таблицы представляется собой упорядоченный набор следующих значений:

  • Фамилия И.О. — строка (тип String) до 20 символов;

  • ДатаРождения — данное типа String до 4;

  • Группа — строка длиной до 5 символов;

  • Оценка — 1 символ.

Каждая запись будет состоять из 30 символов.

Создадим свой тип данных

    • Код программы


Private Type Dannye

FIO As String * 20

GodRozhdenija As String * 4

Group As String * 5

Otsenka As Byte

End Type
Dim Student As Dannye

Dim DlinaZapisi As Integer

Dim KolichestvoZapisei As Integer
Private Sub Form_Load()

DlinaZapisi = Len(Student)

Open "Database.dbf" For Random As #1 Len = Len(Student)

KolichestvoZapisei = LOF(1) \ DlinaZapisi

lblKolichestvoZapisei = Str(KolichestvoZapisei) + " записей"

Close #1

End Sub
Private Sub cmdVvodSpiskaStudentov_Click()

Dim i As Integer

Dim Kolichestvo As Integer

DlinaZapisi = Len(Student)
Open "Database.dbf" For Random As #1 Len = Len(Student)

KolichestvoZapisei = LOF(1) \ DlinaZapisi
Kolichestvo = InputBox("Введите количество записей", "Ввод числа", 0)

If Kolichestvo = 0 Then Exit Sub

For i% = 1 To Kolichestvo

Student.FIO = InputBox("Введите фамилию студента", "Ввод данных о студенте")

Student.GodRozhdenija = InputBox("Введите год рождения студента", "Ввод данных о студенте")

Student.Group = InputBox("Введите группу студента", "Ввод данных о студенте")

Student.Otsenka = InputBox("Введите оценку студента", "Ввод данных о студенте")

Put #1, i + KolichestvoZapisei, Student

Next

Close #1

End Sub
Private Sub cmdChtenieIzFaila_Click()

Dim i As Integer

lstFIO.Clear

lstGroup.Clear

lstOtsenka.Clear
DlinaZapisi = Len(Student)

Open "Database.dbf" For Random As #1 Len = DlinaZapisi

KolichestvoZapisei = LOF(1) \ DlinaZapisi

i = 1

Do While i <= KolichestvoZapisei

Get #1, i, Student

lstFIO.AddItem Student.FIO

lstGroup.AddItem Student.Group

lstOtsenka.AddItem Student.Otsenka

i = i + 1

Loop

Close #1

End Sub

    • Перед запуском программы сохраните файл под именем «Прямой доступ»

    • Составьте список из 20 фамилий студентов вашей группы.

    • Измените код программы так, чтобы на форму выводились фамилии студентов, сдавших экзамен на «4» и «5»



  1. 1   2   3   4   5   6   7   8   9



    Скачать файл (808.5 kb.)

    Поиск по сайту:  

© gendocs.ru
При копировании укажите ссылку.
обратиться к администрации