Задача с использованием массивов и меню...

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Glebasik
Начинающий
Начинающий
 
Сообщения: 6
Зарегистрирован: 03.05.2010 (Пн) 11:54
Откуда: Украина

Задача с использованием массивов и меню...

Сообщение Glebasik » 03.05.2010 (Пн) 12:10

Добрый день, уважаемые Форумчане !!!
На этом замечательном сайте я впервые и... так уж сложилось, что вынужден попросить Вашей профессиональной помощи вот в таком вопросе...

У меня есть задание:
Создать программу, которая позволяет обработать такие данные, составить блок-схему решения алгоритмич. процессов (в форме дать возможность пользователю ввести 5 информационных строчек)

Изображение

И вот я создал 2 формы (1 - главная с таблицей и меню, другая - информация про автора)

Написал код для Главной формы с таблицей и меню:
Код: Выделить всё
Dim KV1, KV2, KV3, KV4, Rik
Private Sub mnuClear_Click()
For i = 0 To 4
txtN(i).Text = ""
txt1(i).Text = ""
txt2(i).Text = ""
txt3(i).Text = ""
txt4(i).Text = ""
txtU(i).Text = ""
txtN(i).Enabled = True
txt1(i).Enabled = True
txt2(i).Enabled = True
txt3(i).Enabled = True
txt4(i).Enabled = True
Next
mnuRik.Enabled = False
mnuPids.Enabled = False
End Sub

Private Sub mnuExit_Click()
End
End Sub

Private Sub mnuInfo_Click()
frmMain.Hide
frmAbout.Show
End Sub

Private Sub mnuPids_Click()
Pids = 0
For i = 0 To 4
Pids = Pids + Rik(i)
Next
lblPids.Caption = Str(Pids) + " грн."
(наверное, не правильно...)
End Sub

Private Sub mnuRik_Click()
For i = 0 To 4
(вообще не знаю, как дальше делать...)
End Sub


Написал код для формы с информацией про автора:
Код: Выделить всё
Private Sub Ok_Click()
frmAbout.Hide
frmMain.Show
End Sub


Мои переменные:
KV1 - KV4 - Кварталы 1-4... (не знаю, нужно ли было их объявлять)
lblZ - 1 этикетка (массив) для Наименования, кварталов, суммы за год...
txtN - текстовые поля для "наименование продукции"
txt1-4 - текстовые поля для "кварталов"
txtU - текстовые поля для "Всего за год"
lblPids - этикетка (массив) для "Итога"

Моё Меню:
Окно:
1) mnuClear - очистить таблицу
2) mnuExit - выход
Расчет:
1) mnuRik - Всего за год
2) mnuPids - Итог
Информация:
1) mnuInfo - Информация про Автора

И вот не могу сделать код для расчета по нажатию на кнопки Расчёт-Всего за год, Расчёт - Итог...

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

Не на кого больше надеяться...

Заранее - Спасибо Вам большое за понимание и помощь!

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Re: Задача с использованием массивов и меню...

Сообщение Viper » 03.05.2010 (Пн) 12:15

Glebasik писал(а):И вот не могу сделать код для расчета по нажатию на кнопки Расчёт-Всего за год, Расчёт - Итог...
И что значит "не могу"? В чем сложность то?
Весь мир матрица, а мы в нем потоки байтов!

Glebasik
Начинающий
Начинающий
 
Сообщения: 6
Зарегистрирован: 03.05.2010 (Пн) 11:54
Откуда: Украина

Re: Задача с использованием массивов и меню...

Сообщение Glebasik » 03.05.2010 (Пн) 12:55

Сложность была в том, что я не мог написать код для расчета данных по нажатию в меню...

Смог!

Вот так теперь выглядит код (и всё работает :-) ):

Код: Выделить всё
Dim KV1, KV2, KV3, KV4, Rik
Private Sub mnuClear_Click()
For i = 0 To 4
txtN(i).Text = ""
txt1(i).Text = ""
txt2(i).Text = ""
txt3(i).Text = ""
txt4(i).Text = ""
txtU(i).Text = ""
txtN(i).Enabled = True
txt1(i).Enabled = True
txt2(i).Enabled = True
txt3(i).Enabled = True
txt4(i).Enabled = True
lblPids(1).Caption = ""
lblPids(2).Caption = ""
lblPids(3).Caption = ""
lblPids(4).Caption = ""
lblPids(5).Caption = ""
Next
mnuRik.Enabled = False
mnuPids.Enabled = False
End Sub

Private Sub mnuExit_Click()
End
End Sub

Private Sub mnuInfo_Click()
frmMain.Hide
frmAbout.Show
End Sub

Private Sub mnuPids_Click()
For i = 0 To 4
lblPids(1) = Val(lblPids(1).Caption) + Val(txt1(i).Text)
lblPids(2) = Val(lblPids(2).Caption) + Val(txt2(i).Text)
lblPids(3) = Val(lblPids(3).Caption) + Val(txt3(i).Text)
lblPids(4) = Val(lblPids(4).Caption) + Val(txt4(i).Text)
lblPids(5) = Val(lblPids(5).Caption) + Val(txtU(i).Text)
Next i
End Sub

Private Sub mnuRik_Click()
For i = 0 To 4
txtU(i).Text = Val(txt1(i).Text) + Val(txt2(i).Text) + Val(txt3(i).Text) + Val(txt4(i).Text)
Next i
End Sub

Скажите пожалуйста, смотря на это - те переменные, которые в коде объявлены - они правильно объявлены или там что-то другое должно быть?

И вот еще блок-схема по этой задаче вообще не лезет в голову - как её сделать.?

ExiliM
Новичок
Новичок
Аватара пользователя
 
Сообщения: 47
Зарегистрирован: 22.02.2010 (Пн) 4:41

Re: Задача с использованием массивов и меню...

Сообщение ExiliM » 03.05.2010 (Пн) 13:07

я отправил тебе на мыло, как и обещал(зы, я с другого форума, под ником Вит) :)

Glebasik
Начинающий
Начинающий
 
Сообщения: 6
Зарегистрирован: 03.05.2010 (Пн) 11:54
Откуда: Украина

Re: Задача с использованием массивов и меню...

Сообщение Glebasik » 04.05.2010 (Вт) 9:37

Ребят, в общем вот конечный код:

Код: Выделить всё
Dim i
Private Sub mnuClear_Click()
For i = 0 To 4
txtN(i).Text = ""
txt1(i).Text = ""
txt2(i).Text = ""
txt3(i).Text = ""
txt4(i).Text = ""
txtU(i).Text = ""
txtN(i).Enabled = True
txt1(i).Enabled = True
txt2(i).Enabled = True
txt3(i).Enabled = True
txt4(i).Enabled = True
lblPids(1).Caption = ""
lblPids(2).Caption = ""
lblPids(3).Caption = ""
lblPids(4).Caption = ""
lblPids(5).Caption = ""
Next
mnuRik.Enabled = False
mnuPids.Enabled = False
End Sub

Private Sub mnuExit_Click()
End
End Sub

Private Sub mnuInfo_Click()
frmMain.Hide
frmAbout.Show
End Sub

Private Sub mnuPids_Click()
For i = 0 To 4
lblPids(1) = Val(lblPids(1).Caption) + Val(txt1(i).Text)
lblPids(2) = Val(lblPids(2).Caption) + Val(txt2(i).Text)
lblPids(3) = Val(lblPids(3).Caption) + Val(txt3(i).Text)
lblPids(4) = Val(lblPids(4).Caption) + Val(txt4(i).Text)
lblPids(5) = Val(lblPids(5).Caption) + Val(txtU(i).Text)
Next i
End Sub

Private Sub mnuRik_Click()
For i = 0 To 4
txtU(i).Text = Val(txt1(i).Text) + Val(txt2(i).Text) + Val(txt3(i).Text) + Val(txt4(i).Text)
Next i
End Sub


Очень прошу - помогите с блок-схемой... Вообще не пойму как её делать :(


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: SemrushBot, Yandex-бот и гости: 110

    TopList