Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

УМК_ПрОА_4

.pdf
Скачиваний:
9
Добавлен:
03.05.2015
Размер:
1.01 Mб
Скачать

txtFam.SetFocus GoTo mksub

End If

If (optVvod.Value = False) And (netotv = 0) Then sv = sv + 1 'счетчик вопросов

no = "1" 'нажата кнопка 1 If npo = no Then

sb = sb + 1 txtVvod.Text = "Да!" txtVvod.Refresh

For i = 1 To 30000000

Next i

txtVvod.Text = " " txtVvod.Refresh Else

txtVvod.Text = "Heт!" txtVvod.Refresh

For i = 1 To 30000000

Next i

txtVvod.Text = " " txtVvod.Refresh End If

Else

txtVvod.Text = txtVvod.Text + "0" txtVvod.Refresh

GoTo mksub

End If

lblPodskazka.Caption = " " lblPodskazka.Refresh

Doit

mksub: End Sub

Private Sub cmd2_Click()

If txtFam.Enabled = True Then

cmd2.Enabled = False 'запрет cmd, пока не введена фамилия

End If

If txtNlet.Text = "" Or txtNlet.Text = " " Or txtNlet.Text = " " Or txtNlet.Text = " " Then

MsgBox ("Введите имя работы!") txtNlet.Enabled = True txtNlet.SetFocus

GoTo mksub

End If

If txtFam.Text = " " Then MsgBox ("Введите фамилию!") txtFam.Enabled = True txtFam.SetFocus

GoTo mksub

End If

If (optVvod.Value = False) And (netotv = 0) Then sv = sv + 1 'счетчик вопросов

no = "2" 'нажата кнопка 2 If npo = no Then

200

sb = sb + 1 txtVvod.Text = "Да!" txtVvod.Refresh

For i = l To 30000000

Next i

txtVvod.Text = " " txtVvod.Refresh Else

txtVvod.Text = "Heт!" txtVvod.Refresh

For i = l To 30000000

Next i

txtVvod.Text = " " txtVvod.Refresh End If

Else

txtVvod.Text = txtVvod.Text + "0" txtVvod.Refresh

GoTo mksub

End If

lblPodskazka.Caption = " " lblPodskazka.Refresh

Doit

mksub: End Sub

Private Sub cmd3_Click()

If txtFam.Enabled = True Then

cmd3.Enabled = False 'запрет cmd, пока не введена фамилия

End If

If txtNlet.Text = "" Or txtNlet.Text = " " Or txtNlet.Text = " " Or

txtNlet.Text = " " Then

MsgBox ("Введите имя работы!") txtNlet.Enabled = True

txtNlet.SetFocus

 

GoTo mksub

 

End If

" Then

If txtFam.Text = "

MsgBox ("Введите фамилию!") txtFam.Enabled = True txtFam.SetFocus

GoTo mksub

End If

If (optVvod.Value = False) And (netotv = 0) Then sv = sv + 1 'счетчик вопросов

no = "3" 'нажата кнопка 3 If npo = no Then

sb = sb + 1 txtVvod.Text = "Да!" txtVvod.Refresh

For i = l To 30000000

Next i

txtVvod.Text = " " txtVvod.Refresh

201

Else

txtVvod.Text = "Heт!" txtVvod.Refresh

For i = l To 30000000

Next i

txtVvod.Text = " " txtVvod.Refresh End If

Else

txtVvod.Text = txtVvod.Text + "0" txtVvod.Refresh

GoTo mksub

End If

lblPodskazka.Caption = " " lblPodskazka.Refresh

Doit

mksub: End Sub

Private Sub cmd4_Click()

If txtFam.Enabled = True Then

cmd4.Enabled = False 'запрет cmd, пока не введена фамилия

If txtNlet.Text = "" Or txtNlet.Text = " " Or txtNlet.Text = " " Or

txtNlet.Text = " " Then

MsgBox ("Введите имя работы!")

txtNlet.Enabled = True

 

txtNlet.SetFocus

 

GoTo mksub

 

End If

" Then

If txtFam.Text = "

MsgBox ("Введите фамилию!") txtFam.Enabled = True txtFam.SetFocus

GoTo mksub

End If

If (optVvod.Value = False) And (netotv = 0) Then sv = sv + 1 'счетчик вопросов

no = "4" 'нажата кнопка 4 If npo = no Then

sb = sb + 1 txtVvod.Text = "Да!" txtVvod.Refresh

For i = l To 3000000

Next i

txtVvod.Text = " " txtVvod.Refresh Else

txtVvod.Text = "Heт!" txtVvod.Refresh

For i = l To 3000000

Next i

txtVvod.Text = " " txtVvod.Refresh End If

202

Else

txtVvod.Text = txtVvod.Text + "0" txtVvod.Refresh

GoTo mksub

End If

lblPodskazka.Caption = " " lblPodskazka.Refresh

Doit

End If

mksub: End Sub

Private Sub cmd5_Click()

If txtFam.Enabled = True Then

cmd5.Enabled = False 'запрет cmd, пока не введена фамилия

If txtNlet.Text = "" Or txtNlet.Text = " " Or txtNlet.Text = " " Or

txtNlet.Text = " " Then

MsgBox ("Введите имя работы!")

txtNlet.Enabled = True

 

txtNlet.SetFocus

 

GoTo mksub

 

End If

" Then

If txtFam.Text = "

MsgBox ("Введите фамилию!") txtFam.Enabled = True txtFam.SetFocus

GoTo mksub

End If

If (optVvod.Value = False) And (netotv = 0) Then sv = sv + 1 'счетчик вопросов

no = "5" 'нажата кнопка 5 If npo = no Then

sb = sb + 1 txtVvod.Text = "Да!" txtVvod.Refresh

For i = l To 3000000

Next i

txtVvod.Text = " " txtVvod.Refresh Else

txtVvod.Text = "Heт!" txtVvod.Refresh

For i = l To 3000000

Next i

txtVvod.Text = " " txtVvod.Refresh End If

Else

txtVvod.Text = txtVvod.Text + "0" txtVvod.Refresh

GoTo mksub

End If

lblPodskazka.Caption = " " lblPodskazka.Refresh

203

Doit

End If

mksub: End Sub

Private Sub Form_Load()

i = 0

txtVvod.Enabled = False optVvod.Enabled = False End Sub

Private Sub Form_Unload(Cancel As Integer)

End Sub

Private Sub mnuHelpAbout_Click()

frmHelpAbout.Show 1 End Sub

Private Sub mnuHelpInst_Click()

frmHelpInst.Show 1 End Sub

Private Sub optVvod_Click()

If txtFam.Enabled = True Then

 

cmdl.Enabled = False 'запрет cmd, пока не введена фамилия

" Or

If txtNlet.Text = ""

Or txtNlet.Text = " " Or txtNlet.Text = "

txtNlet.Text = " " Then

 

 

MsgBox ("Введите имя работы!")

 

txtNlet.Enabled = True

 

 

txtNlet.SetFocus

 

 

GoTo mksub

 

 

End If

" Then

 

If txtFam.Text = "

 

MsgBox ("Введите фамилию!") txtFam.Enabled = True txtFam.SetFocus

GoTo mksub

End If

sv = sv + 1 'счетчик вопросов

If npo = txtVvod.Text Then sb = sb + 1

txtVvod.Техt = "Да!" txtVvod.Refresh

For i = 1 To 3000000

Next i

txtVvod.Text = " " txtVvod.Refresh optVvod.Value = False Else

txtVvod.Text = "Нет!" txtVvod.Refresh

For i = 1 To 3000000

204

Next i txtVvod.Text = " " txtVvod.Refresh

optVvod.Value = False End If

lblPodskazka.Caption = " " lblPodskazka.Refresh txtVvod.Enabled = False optVvod.Enabled = False Doit

mksub: End Sub

Private Sub Timer1_Timer()

If lblNv2.Caption <> " " Then t = t - 1

lblTime.Caption = Str(t) End If

If t = 1 Then t = 0

lblTime.Caption = Str(t)

MsgBox ("Извините, время вышло!")

Doit

End If

If t = 0 Then t = 600

End Sub

Private Sub txtFam_Click()

Fam = txtFam.Text 'фамилия

txtFam.Enabled = False 'недоступность поля текста t = 600 'установка времени

sb = 0 'счетчик баллов sv = 0 'счетчик вопросов npo = "0"

cmd1.Enabled = True 'разрешение cmd — введена фамилия cmd2.Enabled = True

cmd3.Enabled = True cmd4.Enabled = True cmd5.Enabled = True

Doit ' вызов общей процедуры

End Sub

Private Sub txtFam_KeyPress(KeyAscii As Integer)

If KeyAscii = 13 Then

Fam = txtFam.Text 'фамилия

txtFam.Enabled = False 'недоступность поля текста t = 600 'установка времени

sb = 0 'счетчик баллов

sv = 0 'счетчик вопросов npo = "0"

cmd1.Enabled = True 'разрешение cmd — введена фамилия cmd2.Enabled = True

cmd3.Enabled = True cmd4.Enabled = True

205

cmd5.Enabled = True

Doit 'вызов общей процедуры

End If

End Sub

Private Sub txtNlet_Click ()

txtNlet.Enabled = False 'недоступность поля текста

If txtFam.Enabled = False Then txtFam.Enabled = True txtFam.SetFocus

End If

End Sub

Private Sub txtNlet_KeyPress(KeyAscii As Integer)

If KeyAscii = 13 Then

txtNlet.Enabled = False 'недоступность поля текста

End If

If txtFam.Enabled = False Then txtFam.Enabled = True txtFam.SetFocus

End If

End Sub

Коды для frmMark2 — frmMark5

Private Sub Form_Load()

End Sub

Коды для Module 1

(General) -> (Declarations)

Type vop 'определение записи v As String

o As String

n As String

End Type Dim z As vop

206

3. ЗАДАНИЕ ВТОРОГО УРОВНЯ: ИНДИВИДУАЛЬНЫЕ ВАРИАНТЫ

3.1 Общие положения

Цель индивидуального задания – продемонстрировать степень освоения технологии визуального программирования на примере RAD-системы Microsort Visual Basic 6.0.

В каждом варианте задания требуется:

создать дизайн экранной формы для работы пользователя при решении профессиональной задачи;

создать программный код, связанный с элементом управления

CommandButton, производящий вычисления над введенными пользователем данными;

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

Требования к работе экранной формы:

поля, предназначенные для отображения расчетных значений, должны быть недоступны для редактирования пользователем,

имя файла должно задаваться пользователем произвольно,

предусмотреть обработку ошибочных действий пользователя путем формирования диагностических сообщений.

207

3.2

Примеры вариантов заданий

 

РАСЧЕТ НАЛОГА НА ПРИБЫЛЬ

 

ДОХОДЫ

 

РАСХОДЫ

 

ПРИБЫЛЬ

 

СТАВКА

 

НАЛОГА

 

СУММА

 

НАЛОГА

 

Ввести из файла

 

Записать в файл

 

РАССЧИТАТЬ

 

ПРОДАЖА ТОВАРА

 

ТОВАР

 

ЦЕНА

 

КОЛ-ВО

 

СУММА

 

НДС 18%

ИТОГО

Ввести из файла Записать в файл

РАССЧИТАТЬ

208

ДОХОДЫ ФИЗИЧЕСКИХ ЛИЦ

ДОХОД

НДФЛ 13%

ПФР 20%

ФСС 2,9%

ФОМС 3,1%

ИТОГО

НАЛОГОВ

Ввести из файла

Записать в файл

РАССЧИТАТЬ

РАСЧЕТ НАЛОГА НА ИМУЩЕСТВО

Основные

средства

Амортизация

ОС

Остаточная

стоимостьОС

СТАВКА

НАЛОГА

СУММА

НАЛОГА

Ввести из файла

Записать в файл

РАССЧИТАТЬ

209