public void DelPredmet(Predmet Predmet, Setting DelFrom) { if (Predmet.GetNameOfPredmet().Length > 0) { this.ArrayOfPredmet.Remove(Predmet); //нужно удалить его и из всех групп for (int i = 0; i < DelFrom.GetAllGroups().Length; i++) { for (int a = 0; a < DelFrom.GetGroup(i).GetAllPredmet().Length; a++) { if (DelFrom.GetGroup(i).GetPredmet(a).ToString().Equals(Predmet.ToString())) { this.DelPredmetInGroup(DelFrom.GetGroup(i), Predmet); } } } } else { System.Windows.Forms.MessageBox.Show("Class Teacher : При удалении предмета его название не введено!"); } }
private void buttonAddTestOfFile_Click(object sender, EventArgs e) { this.openFileDialog1.InitialDirectory = Path.GetFullPath("Tests"); this.openFileDialog1.ShowDialog(); this.listBoxTest.Items.Clear(); Predmet SelectPredmet = new Predmet(); SelectPredmet = (Predmet)this.listBoxPredmet.SelectedItem; if (SelectPredmet != null) { this.listBoxTest.Items.AddRange(SelectPredmet.GetTests()); } if (this.listBoxTest.Items.Count > 0) { this.listBoxTest.SelectedIndex = 0; this.buttonDelTest.Enabled = this.buttonIzmNameofTest.Enabled = this.menuItem17.Enabled = this.menuItem18.Enabled = this.toolStripMenuItem8.Enabled = this.toolStripMenuItem9.Enabled = true; } else { this.buttonDelTest.Enabled = this.buttonIzmNameofTest.Enabled = this.menuItem17.Enabled = this.menuItem18.Enabled = this.toolStripMenuItem8.Enabled = this.toolStripMenuItem9.Enabled = false; } }
private void listBox1_SelectedIndexChanged(object sender, EventArgs e) { Predmet SelectPredmet = (Predmet)this.listBoxPredmet.Items[this.listBoxPredmet.SelectedIndex]; //віводим список тестов по данному предмету this.listViewTest.Items.Clear(); //проверка журнала и в случае прохождения этого теста его зачеркивание // // DateTime DT = new DateTime(); DateTime DTdefault = new DateTime(); Object[] Tests = new Object[SelectPredmet.GetTests().Length]; Tests = SelectPredmet.GetTests(); for (int a = 0; a < Tests.Length; a++) { DT = this.MF.setting.WhenPassTest(Tests[a], this.CurrentUser.GetID()); //ловушка от изменения дат if (DT.CompareTo(DateTime.Now) > 0) { MessageBox.Show("Помилка у часі вже провежених тестів. Тести проведені після сьогодення. \nПрограму буде заблоковано до реєстрації"); this.MF.setting.BlockProgramm(); } if (!this.MF.setting.GetPovtorSdachi()) { if (DT.CompareTo(DTdefault) == 0) { this.listViewTest.Items.Add(Tests[a].ToString()); } else { string t = Tests[a].ToString(); this.listViewTest.Items.Add(t, 0); } } else { if (DT.CompareTo(DTdefault) == 0) { this.listViewTest.Items.Add(Tests[a].ToString()); } else { DateTime Now = DateTime.Now; TimeSpan HowStep = Now - DT; TimeSpan TimeForNewTest = new TimeSpan(0, Convert.ToInt32(this.MF.setting.GetTimeForNewTest()), 0); //int arw = HowStep.CompareTo(TimeForNewTest); if (HowStep.CompareTo(TimeForNewTest) > 0) { this.listViewTest.Items.Add(Tests[a].ToString()); } else { string t = Tests[a].ToString(); this.listViewTest.Items.Add(t, 0); } } } } if (this.listViewTest.Items.Count == 0) { this.buttonNext.Enabled = false; } else { this.buttonNext.Enabled = true; } }
private void buttonNext_Click(object sender, EventArgs e) { if (this.listViewTest.SelectedItems.Count == 0) { MessageBox.Show("Виберіть тест, який необхідно пройти!"); } else { Predmet SelectPredmet = (Predmet)this.listBoxPredmet.Items[this.listBoxPredmet.SelectedIndex]; if (this.listViewTest.SelectedItems[0].ImageIndex != -1) { if (!this.MF.setting.GetPovtorSdachi()) { MessageBox.Show("Повторне складання тестів заборонене адміністратором!"); } else { DateTime TimePass = this.MF.setting.WhenPassTest(SelectPredmet.FindTest(this.listViewTest.SelectedItems[0].Text), this.CurrentUser.GetID()); DateTime TimeForNewTest = TimePass.AddMinutes(Convert.ToInt32(this.MF.setting.GetTimeForNewTest())); TimeSpan interval = TimeForNewTest - DateTime.Now; MessageBox.Show("Повторне складання вказаного тесту Вами можливо лише через " + interval.Hours + " годин та " + interval.Minutes + " хвилин!"); } } else { string NameofTest = SelectPredmet.FindTest(this.listViewTest.SelectedItems[0].Text).ToString(); string NameColection = NameofTest.Substring(0, 3); if (NameColection.Equals("(K)")) //это коллекция { COT = new CollectionOfTest(); COT = (CollectionOfTest)SelectPredmet.FindTest(NameofTest); int SummOfMark = 0; string message = ""; System.Collections.ArrayList AOT = COT.GetTests(); int[] APrav = new int[AOT.Count]; int[] ANeprav = new int[AOT.Count]; int[] CollMark = new int[AOT.Count]; this.Visible = false; for (int i = 0; i < AOT.Count; i++) { TestForm tf = new TestForm((Test)AOT[i], CurrentUser); tf.ShowDialog(); SummOfMark += tf.mark; APrav[i] = tf.prav; ANeprav[i] = tf.neprav; CollMark[i] = tf.mark; message += (i + 1) + ". " + ((Test)AOT[i]).GetNameOfTest() + " - " + tf.mark + "\n"; } string caption = "Оцінки за проходження колекції тестів: \"" + NameOfColl + "\""; if (COT.GetHowMark() == 0 || COT.GetHowMark() == 2) { message += "\n Загальна оцінка за вказаними тестами - " + SummOfMark; //запись в журнал результатов this.MF.setting.AddLogCollection(CurrentUser.GetID(), (Predmet)this.listBoxPredmet.SelectedItem, COT, APrav, ANeprav, CollMark, SummOfMark); } else { message += "\n Середньоарифметична оцінка за вказаними тестами - " + ((float)SummOfMark) / (AOT.Count); this.MF.setting.AddLogCollection(CurrentUser.GetID(), (Predmet)this.listBoxPredmet.SelectedItem, COT, APrav, ANeprav, CollMark, ((float)SummOfMark) / (AOT.Count)); } MessageBox.Show(message, caption); this.Visible = true; } else //єто тест { Test T = new Test(); T = (Test)SelectPredmet.FindTest(NameofTest); TestForm tf = new TestForm(T, CurrentUser); this.Visible = false; tf.ShowDialog(); //запись в журнал результатов this.MF.setting.AddLogTest(this.CurrentUser.GetID(), (Predmet)this.listBoxPredmet.SelectedItem, T, tf.prav, tf.neprav, tf.mark); tf.Close(); this.Visible = true; } } this.listBox1_SelectedIndexChanged(this.listBoxPredmet, new EventArgs()); } }