예제 #1
0
        private void buttonAddAnswer_Click(object sender, EventArgs e)
        {
            ClassTotal.temp_interval++;
            switch (ClassTotal.type)
            {
            case "Одиночный выбор":
                ClassTotal.RadioButtonDynamic(splitContainer3.Panel1, 3, 120 + (ClassTotal.temp_interval * 40), 17, 20);
                ClassTotal.TextBoxDynamic(splitContainer3.Panel1, 25, 120 + (ClassTotal.temp_interval * 40), 637, 20);
                break;

            case "Множественный выбор":
                ClassTotal.CheckBoxDynamic(splitContainer3.Panel1, 3, 120 + (ClassTotal.temp_interval * 40), 17, 20);
                ClassTotal.TextBoxDynamic(splitContainer3.Panel1, 25, 120 + (ClassTotal.temp_interval * 40), 637, 20);
                break;

            case "Ввод слова":
                ClassTotal.TextBoxDynamic(splitContainer3.Panel1, 3, 3 + (ClassTotal.temp_interval * 40), 330, 20);
                break;

            case "На соответствие":
                ClassTotal.TextBoxDynamic(splitContainer3.Panel1, 17, 120 + (ClassTotal.temp_interval * 40), 300, 20);
                ClassTotal.TextBoxDynamic(splitContainer3.Panel1, 348, 120 + (ClassTotal.temp_interval * 40), 300, 20);
                break;
            }
        }
예제 #2
0
        private void buttonOK_Click(object sender, EventArgs e)
        {
            if (temp == true)
            {
                newTest newTest = new newTest();
                ClassTotal.temp_interval = 0;
                m_parent.splitContainer3.Panel1.Controls.Clear();
                m_parent.textBoxQuestion.Text         = "";
                m_parent.buttonAddAnswer.Visible      = true;
                m_parent.buttonSaveQuestion.Visible   = true;
                m_parent.buttonСancelQuestion.Visible = true;

                switch (ClassTotal.type)
                {
                case "Одиночный выбор":
                    for (int i = 0; i < 4; i++)
                    {
                        ClassTotal.RadioButtonDynamic(m_parent.splitContainer3.Panel1, 3, 3 + (i * 40), 17, 20);
                        ClassTotal.TextBoxDynamic(m_parent.splitContainer3.Panel1, 25, 3 + (i * 40), 637, 30);
                    }

                    break;

                case "Множественный выбор":
                    //m_parent.splitContainer3.Panel1.Controls.Clear();
                    for (int i = 0; i < 4; i++)
                    {
                        ClassTotal.CheckBoxDynamic(m_parent.splitContainer3.Panel1, 3, 3 + (i * 40), 17, 30);
                        ClassTotal.TextBoxDynamic(m_parent.splitContainer3.Panel1, 25, 3 + (i * 40), 637, 30);
                    }

                    break;

                case "Ввод слова":
                    ClassTotal.TextBoxDynamic(m_parent.splitContainer3.Panel1, 3, 3, 330, 30);
                    m_parent.buttonAddAnswer.Visible = false;
                    break;

                case "Ввод значения":

                    ClassTotal.TextBoxDynamic(m_parent.splitContainer3.Panel1, 3, 3, 330, 30);
                    m_parent.buttonAddAnswer.Visible = false;

                    break;

                case "На соответствие":
                    for (int i = 0; i < 4; i++)
                    {
                        ClassTotal.TextBoxDynamic(m_parent.splitContainer3.Panel1, 17, 3 + (i * 40), 300, 30);
                        ClassTotal.TextBoxDynamic(m_parent.splitContainer3.Panel1, 348, 3 + (i * 40), 300, 30);
                    }

                    break;
                }
                this.Close();
            }
        }
예제 #3
0
        private void Show_Question()
        {
            ClassQuestion question = listQuestion[currentNumber - 1]; //Объект-текущий вопрос теста

            this.textBoxTextQ.Text = question.textQuestion;           //Получение информации о вопросе
            typeQuestion           = question.typeQuestion;           //Тип вопроса
            answers = question.answers;

            answerMas    = answers.Split(';');       //Деление ответов на части
            countAnswers = answerMas.Length - 1;     //Количество ответов
            splitContainer2.Panel2.Controls.Clear(); //Готовим панель для динамических компонентов
            trueAnswer = "";                         //Строка правильных ответов
            //Отображаем динамические компоненты в зависимости от типа вопроса
            switch (typeQuestion)
            {
            case "Одиночный выбор":
                for (int i = 0; i < countAnswers; i++)
                {
                    trueAnswer += answerMas[i][0];     //Первый символ в ответе хранит правильность: + или –
                                                       //Динамические компоненты ответа зависят от типа вопроса
                    ClassTotal.RadioButtonDynamic(splitContainer2.Panel2, 20, zazorTop + i * comHieght + i * zazor, 30, comHieght);
                    ClassTotal.LabelDynamic(splitContainer2.Panel2, 60, zazorTop + i * comHieght + i * zazor, splitContainer2.Panel2.Width - 70, comHieght, answerMas[i].Remove(0, 1));
                }
                break;

            case "Множественный выбор":
                for (int i = 0; i < countAnswers; i++)
                {
                    trueAnswer += answerMas[i][0];
                    ClassTotal.CheckBoxDynamic(splitContainer2.Panel2, 3, 3 + (i * 40), 17, 20);
                    ClassTotal.LabelDynamic(splitContainer2.Panel2, 25, 3 + (i * 40), 637, 20, answerMas[i].Remove(0, 1));
                }
                break;

            case "Ввод значения":
                trueAnswer = answerMas[0];
                ClassTotal.TextBoxDynamic(splitContainer2.Panel2, 3, 3, 330, 30);
                break;

            case "Ввод слова":
                for (int i = 0; i < countAnswers; i++)
                {
                    trueAnswer += answerMas[i];
                    ClassTotal.TextBoxDynamic(splitContainer2.Panel2, 3, 3 + (i * 40), 330, 30);
                }
                break;

            case "На соответствие":
                string[] first  = new string[countAnswers];
                string[] second = new string[countAnswers];
                for (int i = 0; i < countAnswers; i++)
                {
                    string[] an = answerMas[i].Split('&');
                    first[i]  = an[0];
                    second[i] = an[1];
                }
                for (int i = 0; i < countAnswers; i++)
                {
                    trueAnswer += second[i];
                    ClassTotal.LabelDynamic(splitContainer2.Panel2, 17, 3 + (i * 40), 300, 20, first[i]);
                    ClassTotal.ComboBoxDynamic(splitContainer2.Panel2, 348, 3 + (i * 40), 300, 20, second);
                }
                break;
            }
        }