Создание базы данных о студентах ВУЗа

Курсовой проект - Компьютеры, программирование

Другие курсовые по предмету Компьютеры, программирование

e.Icon = frmDatabase.imlButtons.ListImages(8).Picture

lstKurs.AddItem "По всем курсам"

 

Заполнение по всем курсам лист-бокса с количеством работ lstKurs2

lstKurs2.Clear

For j = 0 To lstKurs.ListCount - 2

lngPoKursu = 0

For i = 0 To frmDatabase.lstZapis(2).ListCount - 1

If frmDatabase.lstZapis(2).List(i) = lstKurs.List(j) Then lngPoKursu = lngPoKursu + 1

Next

lstKurs2.AddItem lngPoKursu

Next

lstKurs2.AddItem CStr(frmDatabase.lstZapis(0).ListCount)

Подсчет количества групп

For i = 0 To frmDatabase.lstZapis(0).ListCount - 1

gr = -1

For j = 0 To lstGroops.ListCount - 1

If lstGroops.List(j) = frmDatabase.lstZapis(1).List(i) Then gr = j

Next

If gr = -1 Then lstGroops.AddItem frmDatabase.lstZapis(1).List(i)

Next

Копирование лист-бокса групп

For i = 0 To lstGroops.ListCount - 1

lstGroops2.AddItem lstGroops.List(i)

Next

Заполнение количества должников

For i = 0 To lstGroops2.ListCount - 1

k = 0

For j = 0 To frmDatabase.lstZapis(1).ListCount - 1

If frmDatabase.lstZapis(1).List(j) = lstGroops2.List(i) Then

30Thenk=k+1"> If Date_raz(frmDatabase.lstZapis(4).List(j), frmDatabase.lstZapis(6).List(j)) > 30 Then k = k + 1

End If

Next

lstkol2.AddItem k

Next

Call Graf

End Sub

 

Public Sub Round(ob_kol As Long, kol1 As Long)

Dim i As Integer

picRound.Scale (-100, 100)-(100, -100)

picRound.FillColor = vbGreen

picRound.Circle (0, 0), 80, , -0.0007, -kol1 * 6.28 / ob_kol, 0.5

picRound.FillColor = vbRed

picRound.Circle (0, 0), 80, , -kol1 * 6.28 / ob_kol, -6.28, 0.5

 

For i = 0 To 7

picRound.Circle (0, -i), 80, , 3.14, 6.28, 0.5

Next

picRound.Circle (0, -7), 80, , 3.14, 6.28, 0.5

picRound.Line (-80, 0)-(-80, -7)

picRound.Line (80, 0)-(80, -7)

lblPersent.Caption = CStr(Int(kol1 * 100 / ob_kol)) + " %"

End Sub

 

Private Sub lstGroops_Click()

0ThenlstKol.ListIndex=lstGroops.ListIndex">If lstKol.ListCount <> 0 Then lstKol.ListIndex = lstGroops.ListIndex

End Sub

Private Sub lstGroops_MouseDown(Button As Integer, Shift As Integer, x As Single, Y As Single)

0ThenlstKol.ListIndex=lstGroops.ListIndex">If lstKol.ListCount <> 0 Then lstKol.ListIndex = lstGroops.ListIndex

End Sub

 

Private Sub lstGroops2_Click()

0Thenlstkol2.ListIndex=lstGroops2.ListIndex">If lstkol2.ListCount <> 0 Then lstkol2.ListIndex = lstGroops2.ListIndex

End Sub

 

Private Sub lstGroops2_MouseDown(Button As Integer, Shift As Integer, x As Single, Y As Single)

0Thenlstkol2.ListIndex=lstGroops2.ListIndex">If lstkol2.ListCount <> 0 Then lstkol2.ListIndex = lstGroops2.ListIndex

End Sub

 

Private Sub lstKol_Click()

0ThenlstGroops.ListIndex=lstKol.ListIndex">If lstGroops.ListCount <> 0 Then lstGroops.ListIndex = lstKol.ListIndex

End Sub

 

Private Sub lstKol_MouseDown(Button As Integer, Shift As Integer, x As Single, Y As Single)

0ThenlstGroops.ListIndex=lstKol.ListIndex">If lstGroops.ListCount <> 0 Then lstGroops.ListIndex = lstKol.ListIndex

End Sub

 

Private Sub lstkol2_Click()

0ThenlstGroops2.ListIndex=lstkol2.ListIndex">If lstGroops2.ListCount <> 0 Then lstGroops2.ListIndex = lstkol2.ListIndex

End Sub

 

Private Sub lstkol2_MouseDown(Button As Integer, Shift As Integer, x As Single, Y As Single)

0ThenlstGroops2.ListIndex=lstkol2.ListIndex">If lstGroops2.ListCount <> 0 Then lstGroops2.ListIndex = lstkol2.ListIndex

End Sub

 

Private Sub lstKurs_Click()

0ThenlstKurs2.ListIndex=lstKurs.ListIndex">If lstKurs2.ListCount <> 0 Then lstKurs2.ListIndex = lstKurs.ListIndex

If lstKurs.Text = "По всем курсам" Then

picRound.Cls

lblPersent.Visible = False

lbl(0).Caption = "По каждому курсу"

lngAll = frmDatabase.lstZapis(1).ListCount

1ThenCallAllKurs">If lstKurs.ListCount > 1 Then Call AllKurs

Else

picRound.Cls

lblPersent.Visible = True

lbl(0).Caption = "От всех работ выбранный курс составляет:"

lngPoKursu = 0

lngAll = frmDatabase.lstZapis(1).ListCount

For i = 0 To frmDatabase.lstZapis(2).ListCount - 1

If frmDatabase.lstZapis(2).List(i) = lstKurs.Text Then lngPoKursu = lngPoKursu + 1

Next

Call Round(lngAll, lngPoKursu)

End If

End Sub

 

Private Sub lstKurs_MouseDown(Button As Integer, Shift As Integer, x As Single, Y As Single)

0ThenlstKurs2.ListIndex=lstKurs.ListIndex">If lstKurs2.ListCount <> 0 Then lstKurs2.ListIndex = lstKurs.ListIndex

End Sub

 

Public Sub AllKurs()

Dim i As Integer

Dim ob As Integer

Dim current As Single

current = -0.0007

ob = CInt(lstKurs2.List(lstKurs2.ListCount - 1))

picRound.Cls

Построение диаграммы

picRound.Scale (-100, 100)-(100, -100)

picRound.FillColor = 2

 

For i = 0 To lstKurs2.ListCount - 2

picRound.FillColor = QBColor(i + 10)

picRound.Circle (0, 20), 80, , current, current - CInt(lstKurs2.List(i)) * 6.28 / ob, 0.5

current = current - CInt(lstKurs2.List(i)) * 6.28 / ob

Легенда

picRound.Line (-90 + Int(i / 3) * 80, -60 - 15 * (i - Int(i / 3) * 3))-(-100 + Int(i / 3) * 80, -50 - 15 * (i - Int(i / 3) * 3)), QBColor(i + 10), BF

Надпись легенды

picRound.Print " " + Left(lstKurs.List(i), 3) + " " + CStr(Int((CInt(lstKurs2.List(i)) * 100 / ob))) + "%"

Next

 

Оформление диаграммы

For i = 0 To 7

picRound.Circle (0, -i + 20), 80, , 3.14, 6.28, 0.5

Next

End Sub

 

Public Sub Stolb(Групп As Integer)

Dim intStWidth As Integer Ширина 1 столбца

Dim ed As Integer picStolb.scaleheight/Максимальное значение - это одна единица графика

Dim max As Integer

Const dw As Byte = 10 Промежуток между столбцами

intStWidth = Int(picStolb.ScaleWidth / Групп) - dw

max = CInt(lstKol.List(0))

For i = 0 To lstKol.ListCount - 1

maxThenmax=CInt(lstKol.List(i))">If CInt(lstKol.List(i)) > max Then max = CInt(lstKol.List(i))

Next

ed = 0

0Thened=picStolb.ScaleHeight/max">If max <> 0 Then ed = picStolb.ScaleHeight / max

9*ed - высота, равная 9 единицам

For i = 0 To Групп - 1

picStolb.Line (0 + i * (intStWidth + dw), picStolb.ScaleHeight)-(intStWidth + i * (intStWidth + dw), picStolb.ScaleHeight - CInt(lstKol.List(i)) * ed), QBColor(i + 10), BF

Next

Установка надписей с названими групп

For i = 0 To Групп - 1

picStolb.CurrentX = ((intStWidth - Len(lstGroops.List(i))) / 2) + (dw + intStWidth) * i

picStolb.CurrentY = picStolb.ScaleHeight - 25

picStolb.Print lstGroops.List(i)

Next

End Sub

 

Public Sub Graf()

Dim intX0 As Integer

Dim edx As Integer

Dim edy As Integer

Dim intY0 As Integer

intX0 = lnOX.X1

edx = Int((lnOX.X2 - intX0) / lstGroops2.ListCount) - 10

intY0 = lnOX.Y1: edy = lstkol2.List(0)

 

If edy = 0 Then

 

Exit Sub

End If

 

For i = 0 To lstkol2.ListCount - 1

edyThenedy=CInt(lstkol2.List(i))">If CInt(lstkol2.List(i)) > edy Then edy = CInt(lstkol2.List(i))

Next

edy = Int((intY0 - lnOY.Y1) / edy) - 5

Установка делений по оси у

For i = 1 To lstkol2.ListCount

picGraf.Line (intX0 - 3, intY0 - CInt(lstkol2.List(i - 1)) * edy)-(intX0 + 3, intY0 - CInt(lstkol2.List(i - 1)) * edy)

picGraf.CurrentX = intX0 - 12

picGraf.CurrentY = intY0 - edy * CInt(lstkol2.List(i - 1)) - 5

picGraf.Print lstkol2.List(i - 1)

Next

Установка делений по оси х

For i = 1 To lstGroops.ListCount

picGraf.Line (intX0 + i * edx, intY0 - 3)-(intX0 + i * edx, intY0 + 3)

picGraf.CurrentX = intX0 + i * edx - Int(Len(lstGroops2.List(i - 1)) / 2)

picGraf.CurrentY = intY0 + 5

picGraf.Print lstGroops2.List(i - 1)

Next

Установка точек и их со?/p>