Пользователь
Регистрация: 04.03.2009
Сообщений: 39
|
(VB) Проблема с сохранением файла
Ребят помогите разобраться.я уже часов 8 мудрю,не могу понять как сделать правильно запись в файл из меню созданной формы.. вот код
Цитата:
Private Type Inst
Fam As String
Num As Integer
Lab1 As Integer
Lab2 As Integer
Lab3 As Integer
End Type
Dim Spis As Inst, st As String, x As Integer, n As Integer
Private Sub FileExit_Click()
Close #1, #2, #3
End
End Sub
Private Sub FileNew_Click()
Dim new_rec As Inst
name_file = InputBox("Введите имя файла")
number_list = InputBox("Введите количество записей")
Open name_file For Random As #1
For i = 1 To number_list
With Spis
.Fam = InputBox("Введите фамилию студента", "Фамилия")
.Num = InputBox("Введите номер группы", "Группа")
.Lab1 = InputBox("Введите количество выполненных лабораторных по АЯПу", "АЯП")
.Lab2 = InputBox("Введите количество выполненных лабораторных по информатике", "Информатика")
.Lab3 = InputBox("Введите количество выполненных лабораторных по физике", "Физика")
End With
Put #1, , Spis
With Spis
List1.AddItem .Fam
List2.AddItem .Num
List3.AddItem .Lab1
List4.AddItem .Lab2
List5.AddItem .Lab3
End With
Next i
Close #1
End Sub
Private Sub FileOpen_Click()
List1.Clear
List2.Clear
List3.Clear
List4.Clear
List5.Clear
CommonDialog1.ShowOpen
st = CommonDialog1.FileName
Open st For Random As #3
Do While Not EOF(3)
Get #3, , Spis
With Spis
List1.AddItem .Fam
List2.AddItem .Num
List3.AddItem .Lab1
List4.AddItem .Lab2
List5.AddItem .Lab3
End With
Loop
Close
End Sub
Private Sub FileRename_Click()
Dim new_rec As Inst
name_file = InputBox("Введите старое имя фaйла")
s$ = InputBox("Введите новое имя фaйла")
Open name_file For Random As #1
Open s For Random As #2
i = 1
Do While Not EOF(1)
Get #1, i, new_rec
Put #2, i, new_rec
i = i + 1
Loop
Close (2)
Close (1)
Kill (name_file)
End Sub
Private Sub FileSave_Click()
Close #1
Open "laba12.txt" For Random As #1
Close #2
Open "laba12.txt" For Random As #2
Do While Not EOF(1)
Get #1, , Spis
Put #2, , Spis
Loop
Close #1, #2
Open "laba12.txt" For Random As #2
Open "laba12.txt" For Random As #1
Do While Not EOF(2)
Get #2, , Spis
Put #1, , Spis
Loop
Close #1, #2
End Sub
Private Sub Form_MouseUp(Button As Integer, Shift As Integer, x As Single, Y As Single)
If Button = vbRightButton Then
FrmMenu.PopupMenu MEnu1
End If
x = Len(Spis)
End Sub
Private Sub HelpAuthor_Click()
MsgBox "Автор: Вася, Дядя Вася", , "О разработчике"
End Sub
Private Sub HelpProgram_Click()
MsgBox "Создать файл, содержащий информацию о студентах. Структура данных: фамилия и инициалы, номер группы, количество выполненных лабораторных работ (1..10) по трем предметам. Напечатать фамилии студентов, выполнивших более 6 работ и список студентов выполнивших менее двух.", , "О программе"
End Sub
Private Sub ServAdd_Click()
Open "laba12.txt" For Random As #1
n = Val(InputBox("Введите количество записей", "Количество"))
For i = 1 To n
With Spis
.Fam = InputBox("Введите фамилию студента", "Фамилия")
.Num = InputBox("Введите номер группы", "Группа")
.Lab1 = InputBox("Введите количество выполненных лабораторных по АЯПу", "АЯП")
.Lab2 = InputBox("Введите количество выполненных лабораторных по информатике", "Информатика")
.Lab3 = InputBox("Введите количество выполненных лабораторных по физике", "Физика")
End With
Put #1, i, Spis
Next i
Close #1
Open "laba12.txt" For Random As #1
For i = 1 To n
Get #1, i, Spis
With Spis
List1.AddItem .Fam
List2.AddItem .Num
List3.AddItem .Lab1
List4.AddItem .Lab2
List5.AddItem .Lab3
End With
Next i
Close #1
End Sub
Private Sub FileExit1_Click()
FileExit_Click
End Sub
Private Sub FileNew1_Click()
FileNew1_Click
End Sub
Private Sub FileOpen1_Click()
FileOpen_Click
End Sub
Private Sub FileSave1_Click()
FileSave_Click
End Sub
Private Sub ServList_Click()
List6.Clear
List7.Clear
Label6.Visible = True
Label7.Visible = True
List6.Visible = True
List7.Visible = True
For i = 0 To List5.ListCount - 1
If (List3.List(i) > 6) And (List4.List(i) > 6) And (List5.List(i) > 6) Then
List6.AddItem (List1.List(i))
End If
If (List3.List(i) < 2) And (List4.List(i) < 2) And (List5.List(i) < 2) Then
List7.AddItem (List1.List(i))
End If
Next i
End Sub
|
а здесь сама лаба http://slil.ru/27724001
|