Реферат

Реферат на тему База данных видеокарт

Работа добавлена на сайт bukvasha.net: 2015-06-30

Поможем написать учебную работу

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

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 22.11.2024


Нижегородский Государственный Технический Университет

База данных видеокарт

Нижний Новгород 2003 г.

Цель работы:

Создание каталога видеокарт. Программа должна уметь: заносить, изменять и удалять видеокарту. Выдавать максимальную и минимальную стоимость видеокарты, в порядке увеличения стоимости.

Программа "База данных видеокарт" (DataBase v.1.02 beta.exe) должна быть написана на языке Visual Basic 6.3.

Составляющие программы:

На рисунке:

-слева – 4 файла программы:

- data.dat – информация о видеокартах (файл Excel (.xls) переименованный в .dat)

- DataBase v.1.02 beta.exe – исполняющий файл программы

- log.dat – история базы данных (файл с произвольным доступом)

- set.ini – файл (с произвольным доступом) для хранения настроек программы

- справа - рабочая папка проекта

Работа с программой:

При первой загрузке сразу создаются файл настроек и истории.

Загружается сплэшскрин:

‘создание новых типов данных

Private Type tune

chekv As String * 1

chekn As String * 16

End Type

Private Type log

vlog As String * 23

vname As String * 17

vdate As String * 12

vtime As String * 10

End Type

‘загрузка формы

Private Sub Form_Load()

Dim chk1 As tune

Dim log1 As log

Open CurDir$ + "\set.ini" For Random As #1 Len = Len(chk1)

Get #1, 1, chk1

If chk1.chekv = "0" Then

Unload Me

Form1.Show

Else

Form1.Check1.Value = 1

End If

Open CurDir$ + "\log.dat" For Random As #2 Len = Len(log1)

End Sub

При нажатии курсором в любую область сплэшскрин выгружается и появляется окно основного меню:

При наведении курсора на любую область в рамке помощь появляется подсказка.

Public excelist As New Excel.Application

‘чек

Private Sub Check1_Click()

Dim chk1 As tune

chk1.chekn = " = Check1.value "

chk1.chekv = Check1.Value

Put #1, 1, chk1.chekv

End Sub

'помощь чек

Private Sub Check1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)

Label1.Caption = "Показывать/нет сплэшскрин (информацию о программе) при загрузке базы данных"

End Sub

‘загрузка формы

Private Sub Form_Load()

Static w As Byte

If w = 0 Then

Set excelist = New Excel.Application

With excelist

Workbooks.Open CurDir$ + "\data.dat"

Visible = False

End With

w = 1

End If

Dim chk1 As tune

chk1.chekn = " = Check1.value "

Get #1, 1, chk1

If chk1.chekv = "0" Then

Check1.Value = 0

Else

Check1.Value = 1

End If

End Sub

‘выход

Private Sub Command6_Click()

Dim chk1 As tune

If MsgBox("Вы действительно желаете выйти ?", vbYesNo, "База данных видеокарт") = vbYes Then

With excelist.ActiveWorkbook

Save

Close

End With

chk1.chekn = " = Check1.value "

If Check1.Value = 1 Then

chk1.chekv = "1"

Put #1, 1, chk1

Else

chk1.chekv = "0"

Put #1, 1, chk1

End If

Close #1

Close #2

End

End If

End Sub

Окно базы данных:

Здесь также имеется область с подсказками. На рисунке, например, при наведении на область об’екта MSFlexgrid появляется информация о кол-ве видеокарт в базе данных.

‘загрузка формы

Private Sub Form_Load()

With MSFlexGrid1

TextMatrix(0, 0) = "Модель"

TextMatrix(0, 1) = "Шина AGP"

TextMatrix(0, 2) = "Частота ядра/памяти"

TextMatrix(0, 3) = "Об'ём памяти"

TextMatrix(0, 4) = "Тип памяти"

TextMatrix(0, 5) = "Цена"

End With

MSFlexGrid1.ColWidth(0) = 3100

MSFlexGrid1.ColWidth(1) = 990

MSFlexGrid1.ColWidth(2) = 1900

MSFlexGrid1.ColWidth(3) = 1300

MSFlexGrid1.ColWidth(4) = 1100

MSFlexGrid1.ColWidth(5) = 1360

Dim i As Integer

Dim zpust As Integer

Dim k As Integer

k = 1

zpust = Form1.zerocell

For i = 1 To zpust

With Form1.excelist.ActiveWorkbook.ActiveSheet

MSFlexGrid1.TextMatrix(k, 0) = .Cells(i, 1)

MSFlexGrid1.TextMatrix(k, 1) = .Cells(i, 2)

MSFlexGrid1.TextMatrix(k, 2) = .Cells(i, 3)

MSFlexGrid1.TextMatrix(k, 3) = .Cells(i, 4)

MSFlexGrid1.TextMatrix(k, 4) = .Cells(i, 5)

MSFlexGrid1.TextMatrix(k, 5) = .Cells(i, 6)

k = k + 1

End With

Next i

With MSFlexGrid1

Rows = zpust + 1

Col = 0

Sort = 1

Rows = 70

End With

End Sub

‘кол-во видеокарт

Private Sub MSFlexGrid1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)

Dim zpust As Integer

zpust = Form1.zerocell

Label1.Caption = "Всего в базе данных - " & zpust & " видеокарт"

End Sub

Как уже говорилось ранее в программе предусмотрено ведение истории:

При нажатии на клавишу очистки содержимое файла истории обнуляется.

‘загрузка формы

Private Sub Form_Load()

With MSFlexGrid1

TextMatrix(0, 0) = "Действие"

TextMatrix(0, 1) = "Модель видеокарты"

TextMatrix(0, 2) = "Дата"

TextMatrix(0, 3) = "Время"

End With

MSFlexGrid1.ColWidth(0) = 3500

MSFlexGrid1.ColWidth(1) = 3500

MSFlexGrid1.ColWidth(2) = 1385

MSFlexGrid1.ColWidth(3) = 1390

Dim chk1 As tune

Dim log1 As log

Dim X As Integer

Dim Y As Integer

Get #1, 3, chk1.chekv

X = Val(chk1.chekv)

For Y = 1 To X

Get #2, Y, log1

MSFlexGrid1.TextMatrix(Y, 0) = log1.vlog

MSFlexGrid1.TextMatrix(Y, 1) = log1.vname

MSFlexGrid1.TextMatrix(Y, 2) = log1.vdate

MSFlexGrid1.TextMatrix(Y, 3) = log1.vtime

Next Y

End Sub

'очистка лога

Private Sub Command1_Click()

Dim chk1 As tune

Dim log1 As log

Dim s As Integer

Dim r As Integer

Get #1, 3, chk1.chekn

s = Val(chk1.chekn)

For r = 1 To s

Put #2, r, log1

Next r

chk1.chekn = 0

Put #1, 3, chk1.chekn

With MSFlexGrid1

Clear

TextMatrix(0, 0) = "Действие"

TextMatrix(0, 1) = "Модель видеокарты"

TextMatrix(0, 2) = "Дата"

TextMatrix(0, 3) = "Время"

End With

End Sub

Добавление в базу данных:

Добавление происходит с помощью 4 – х элементов combobox и одного textbox. Если в форму ничего не введено то появляется окно "Введите модель видеокарты".

‘добавление

Private Sub Command1_Click()

If Combo1.Text <> Empty Then

Dim zpust As Byte

zpust = Form1.zerocell

With Form1.excelist.ActiveWorkbook.ActiveSheet

Cells(zpust + 1, 1) = Combo1.Text

Cells(zpust + 1, 2) = Combo2.Text

Cells(zpust + 1, 3) = Combo3.Text

Cells(zpust + 1, 4) = Combo4.Text

Cells(zpust + 1, 5) = Combo5.Text

Cells(zpust + 1, 6) = Text1.Text

End With

Beep

Dim log1 As log

Dim u As Integer

Dim chk1 As tune

log1.vlog = "Добавлена видеокарта "

log1.vdate = Date$

log1.vname = Combo1.Text

log1.vtime = Time$

Get #1, 3, chk1.chekn

u = Val(chk1.chekn) + 1

chk1.chekn = u

Put #1, 3, chk1.chekn

Put #2, u, log1

Combo1.Text = ""

Combo2.Text = ""

Combo3.Text = ""

Combo4.Text = ""

Combo5.Text = ""

Text1.Text = ""

Else

MsgBox "Введите модель видеокарты"

End If

End Sub

Удаление видеокарты из базы данных:

Форма снабжена элементом checkbox. При установленном флажке, при нажатии на клавишу Удалить появляется окно "Вы действительно желаете удалить данную видеокарту?".

‘удаление

Private Sub Command1_Click()

Dim lab1 As Label

Dim lab2 As Label

If Check1.Value = 1 Then

If MsgBox("Вы действительно желаете удалить данную видеокарту ?", vbYesNo, "База данных видеокарт") = vbYes Then

GoTo lab1

Else: GoTo lab2

End If

Else

GoTo lab1

End If

lab1:

Dim i As Byte

Dim zpust As Byte

zpust = Form1.zerocell

For i = 1 To zpust

If Form1.excelist.ActiveWorkbook.ActiveSheet.Cells(i, 1) = Combo1.Text Then

Form1.excelist.ActiveWorkbook.ActiveSheet.Rows(i).Delete

Beep

Dim log1 As log

Dim u As Integer

Dim chk1 As tune

log1.vlog = "Удалена видеокарта "

log1.vdate = Date$

log1.vname = Combo1.Text

log1.vtime = Time$

Get #1, 3, chk1.chekn

u = Val(chk1.chekn) + 1

chk1.chekn = u

Put #1, 3, chk1.chekn

Put #2, u, log1

GoTo lab2

End If

Next i

MsgBox "Модель не найдена"

lab2:

Combo1.Text = ""

End Sub

Изменение видеокарты происходит с помощью поиска модели видеокарты, если видеокарта не найдена появляется окно "Модель не найдена". Как и в форме добавления есть защита от пустого ввода.

‘изменение

Private Sub Command1_Click()

If Combo1.Text <> Empty Then

Dim o As Byte

Dim f As Label

Dim zpust As Byte

zpust = Form1.zerocell

For o = 1 To zpust

If Form1.excelist.ActiveWorkbook.ActiveSheet.Cells(o, 1) = Combo1.Text Then

Form1.excelist.ActiveWorkbook.ActiveSheet.Rows(o).Delete

With Form1.excelist.ActiveWorkbook.ActiveSheet

Cells(o, 1) = Combo1.Text

Cells(o, 2) = Combo2.Text

Cells(o, 3) = Combo3.Text

Cells(o, 4) = Combo4.Text

Cells(o, 5) = Combo5.Text

Cells(o, 6) = Text1.Text

End With

Dim log1 As log

Dim u As Integer

Dim chk1 As tune

log1.vlog = "Изменена видеокарта "

log1.vdate = Date$

log1.vname = Combo1.Text

log1.vtime = Time$

Get #1, 3, chk1.chekn

u = Val(chk1.chekn) + 1

chk1.chekn = u

Put #1, 3, chk1.chekn

Put #2, u, log1

Beep

GoTo f

End If

Next o

Else

MsgBox "Введите модель"

GoTo f

End If

MsgBox "Модель не найдена"

f:

Combo1.Text = ""

Combo2.Text = ""

Combo3.Text = ""

Combo4.Text = ""

Combo5.Text = ""

Text1.Text = ""

End Sub

Поиск и сортировка:

Осуществляются в одном окне, с помощью элементов optionbutton. Поиск:

Поиск происходит по модели и по цене, в т.ч. в диапазоне цен "от … до", "от … ", "до …". Автоматически происходит сортировка найденных элементов по цене в сторону увеличения.

Сортировка:

Можно выбрать любой параметр сортировки. Она будет произведена в сторону увеличения.

‘загрузка формы

Private Sub Form_Load()

With MSFlexGrid1

TextMatrix(0, 0) = "Модель"

TextMatrix(0, 1) = "Шина AGP"

TextMatrix(0, 2) = "Частота ядра/памяти"

TextMatrix(0, 3) = "Об'ём памяти"

TextMatrix(0, 4) = "Тип памяти"

TextMatrix(0, 5) = "Цена"

End With

MSFlexGrid1.ColWidth(0) = 3100

MSFlexGrid1.ColWidth(1) = 990

MSFlexGrid1.ColWidth(2) = 1900

MSFlexGrid1.ColWidth(3) = 1300

MSFlexGrid1.ColWidth(4) = 1100

MSFlexGrid1.ColWidth(5) = 1360

Dim i As Integer

Dim zpust As Integer

k = 1

zpust = Form1.zerocell

For i = 1 To zpust

With Form1.excelist.ActiveWorkbook.ActiveSheet

MSFlexGrid1.TextMatrix(k, 0) = .Cells(i, 1)

MSFlexGrid1.TextMatrix(k, 1) = .Cells(i, 2)

MSFlexGrid1.TextMatrix(k, 2) = .Cells(i, 3)

MSFlexGrid1.TextMatrix(k, 3) = .Cells(i, 4)

MSFlexGrid1.TextMatrix(k, 4) = .Cells(i, 5)

MSFlexGrid1.TextMatrix(k, 5) = .Cells(i, 6)

k = k + 1

End With

Next i

MSFlexGrid1.Rows = zpust + 1

MSFlexGrid1.Sort = 1

MSFlexGrid1.Rows = 70

End Sub

‘поиск / сортировка

Private Sub Command3_Click()

If e = True Then

Dim zpust As Integer

zpust = Form1.zerocell

Select Case r

Case Is < 6

Dim i As Integer

k = 1

For i = 1 To zpust

With Form1.excelist.ActiveWorkbook.ActiveSheet

MSFlexGrid1.TextMatrix(k, 0) = .Cells(i, 1)

MSFlexGrid1.TextMatrix(k, 1) = .Cells(i, 2)

MSFlexGrid1.TextMatrix(k, 2) = .Cells(i, 3)

MSFlexGrid1.TextMatrix(k, 3) = .Cells(i, 4)

MSFlexGrid1.TextMatrix(k, 4) = .Cells(i, 5)

MSFlexGrid1.TextMatrix(k, 5) = .Cells(i, 6)

k = k + 1

MSFlexGrid1.Rows = MSFlexGrid1.Rows + 1

End With

Next i

With MSFlexGrid1

Rows = zpust + 1

Col = r

Sort = 1

Rows = 70

End With

Case 6

If Combo1.Text <> Empty Then

Dim u As Byte

zpust = Form1.zerocell

k = 1

MSFlexGrid1.Clear

With MSFlexGrid1

TextMatrix(0, 0) = "Модель"

TextMatrix(0, 1) = "Шина AGP"

TextMatrix(0, 2) = "Частота ядра/памяти"

TextMatrix(0, 3) = "Об'ём памяти"

TextMatrix(0, 4) = "Тип памяти"

TextMatrix(0, 5) = "Цена"

End With

For u = 1 To zpust

If Form1.excelist.ActiveWorkbook.ActiveSheet.Cells(u, 1) = Combo1.Text Then

With Form1.excelist.ActiveWorkbook.ActiveSheet

MSFlexGrid1.TextMatrix(k, 0) = .Cells(u, 1)

MSFlexGrid1.TextMatrix(k, 1) = .Cells(u, 2)

MSFlexGrid1.TextMatrix(k, 2) = .Cells(u, 3)

MSFlexGrid1.TextMatrix(k, 3) = .Cells(u, 4)

MSFlexGrid1.TextMatrix(k, 4) = .Cells(u, 5)

MSFlexGrid1.TextMatrix(k, 5) = .Cells(u, 6)

k = k + 1

MSFlexGrid1.Rows = MSFlexGrid1.Rows + 1

End With

End If

Next u

If k = 1 Then MsgBox "Модель не найдена"

Else

MsgBox "Введите модель"

End If

Case 7

If Val(Combo2.Text) < Val(Combo3.Text) Then

MSFlexGrid1.Clear

With MSFlexGrid1

TextMatrix(0, 0) = "Модель"

TextMatrix(0, 1) = "Шина AGP"

TextMatrix(0, 2) = "Частота ядра/памяти"

TextMatrix(0, 3) = "Об'ём памяти"

TextMatrix(0, 4) = "Тип памяти"

TextMatrix(0, 5) = "Цена"

End With

Dim j As Integer

k = 1

For j = 1 To zpust

If Val(Form1.excelist.ActiveWorkbook.ActiveSheet.Cells(j, 6)) >= Val(Combo2.Text) And Val(Form1.excelist.ActiveWorkbook.ActiveSheet.Cells(j, 6)) <= Val(Combo3.Text) Then

With Form1.excelist.ActiveWorkbook.ActiveSheet

MSFlexGrid1.TextMatrix(k, 0) = .Cells(j, 1)

MSFlexGrid1.TextMatrix(k, 1) = .Cells(j, 2)

MSFlexGrid1.TextMatrix(k, 2) = .Cells(j, 3)

MSFlexGrid1.TextMatrix(k, 3) = .Cells(j, 4)

MSFlexGrid1.TextMatrix(k, 4) = .Cells(j, 5)

MSFlexGrid1.TextMatrix(k, 5) = .Cells(j, 6)

k = k + 1

End With

End If

Next j

With MSFlexGrid1

Rows = k

Col = 5

Sort = 1

Rows = 70

End With

Else

MsgBox "Неверно задан диапазон"

End If

Case Else

MsgBox "Неудача"

End Select

Option1.Enabled = True

Option2.Enabled = True

Option3.Enabled = True

Option4.Enabled = True

Option5.Enabled = True

Option6.Enabled = True

Option7.Enabled = True

Option8.Enabled = True

Combo1.Enabled = True

Combo2.Enabled = True

Combo3.Enabled = True

Option1.Value = False

Option2.Value = False

Option3.Value = False

Option4.Value = False

Option5.Value = False

Option6.Value = False

Option7.Value = False

Option8.Value = False

Combo1.Text = ""

Combo2.Text = ""

Combo3.Text = ""

Else

MsgBox "Выберите действие"

End If

e = False

End Sub

В любой момент можно просмотреть информацию о программе:

При нажатии клавиши выход появляется окно "Вы действительно желаете выйти?", при утвердительном ответе программа сохраняет все изменения и закрывается.

Заключение:

Использованные ресурсы:

Программа использует следующее компоненты:

- Microsoft Flex Grid Control 6.0 (SP3)

- Microsoft Windows Common Controls 6.0 (SP4)

и библиотеки:

- Visual Basic for Applications

- Visual Basic runtime objects and procedures

- Visual Basic objects and procedures

- Microsoft Excel 10.0 Object Library

Отличительные особенности программы:

- Практически все формы программы снабжены помощью, т.е. областями в которых появляется информация об объекте, на который наведен курсор. Например в форме поиска при движении курсора по объекту MSFlexGrid появляется информация о количестве найденных видеокарт.

- База данных имеет кроме файла с информацией о видеокартах (.dat) файлы с произвольным доступом. Файл настроек хранит информацию о положении флажков и количестве действий в истории. Файл истории хранит все сведения истории.

- В программе ведется история добавления, удаления, изменения видеокарт (а также очистки) с точностью до секунд. Её можно просмотреть в любой момент и очистить, если возникнет необходимость.

- Поиск по базе данных ведется по количеству введенных символов. Например если вы ввели "GeF" результатом будут все видеокарты GeForce

- Существует функция поиска в диапазоне цен:

от …

до …

и от … до …

- Использованы защиты от неверных действий. При выходе, удалении, очистки истории появляется окно подтверждения.

- При оформлении программы использованы изображения реальных видеокарт.

В процессе написания программы мною были освоены азы программирования на VB 6.5. Изучены основные операции функции и процедуры.


1. Реферат Мировоззрение в философии и его структура
2. Диплом Учет и анализ финансового сосотояния ОАО Надежда
3. Реферат на тему Dramatic Irony In A Dolls Hous Essay
4. Реферат Модернизация бизнес-стратегии через брендинговые проекты
5. Реферат на тему Andrew Carnegie Essay Research Paper Andrew CarnegieEssay
6. Реферат на тему Indian Boarding School Essay Research Paper
7. Реферат Планування коштів на оплату праці
8. Курсовая на тему Профилактическая работа с подростками с девиантным поведением
9. Курсовая Банковская система и ее элементы. Банк России цели функции, операции
10. Реферат Достопримечательности Финляндии