Example #1
0
        private void button2_Click(object sender, EventArgs e)
        {
            var context = new IllusionsPerceptionContext();
            var user    = context.User;

            var name     = textBox1.Text;
            var password = textBox2.Text;

            var admin = user.FirstOrDefault(x => x.Name == name);

            if (admin == null)
            {
                label4.Visible = true;
                textBox1.Text  = "";
                textBox2.Text  = "";
            }
            else if (admin.Password == password && admin.Group == 0)
            {
                var nForm = new Form13();
                nForm.FormClosed += (o, ep) => this.Close();
                nForm.Show();
                this.Hide();
            }
            else
            {
                label4.Visible = true;
                textBox1.Text  = "";
                textBox2.Text  = "";
            }
        }
Example #2
0
        private void button1_Click(object sender, EventArgs e)
        {
            var context = new IllusionsPerceptionContext();
            var user    = context.User.FirstOrDefault(x => x.Id == _id);

            SaveFileDialog saveFileDialog1 = new SaveFileDialog();

            saveFileDialog1.InitialDirectory = "c:\\";
            saveFileDialog1.Filter           = "txt files (*.txt)|*.txt";
            saveFileDialog1.FileName         = user.Name + " Опыт №2";
            saveFileDialog1.FilterIndex      = 2;
            saveFileDialog1.RestoreDirectory = true;

            var result = new StringBuilder();

            var name  = "Имя испытуемого: " + user.Name + "\n";
            var date  = "Дата: " + user.Date + "\n";
            var group = "Номер группы: " + user.Group + "\n";

            result.Append(name);
            result.Append(date);
            result.Append(group);
            result.Append(ExperimentResult());

            if (saveFileDialog1.ShowDialog() == DialogResult.OK)
            {
                var filename = saveFileDialog1.FileName;
                System.IO.File.WriteAllText(filename, result.ToString());
            }
        }
Example #3
0
        private void WriteToDataGridView1(int id)
        {
            dataGridView1.Rows.Clear();
            var context = new IllusionsPerceptionContext();
            var data    = context.Experiment1Result.Where(x => x.Id_User == id);

            var row = 0;

            foreach (var result in data)
            {
                dataGridView1.Rows.Add();
                var numberDisplay = (DataGridViewTextBoxCell)dataGridView1.Rows[row].Cells[0];
                numberDisplay.Value = result.NumberDisplay;

                var providedIncentive = (DataGridViewTextBoxCell)dataGridView1.Rows[row].Cells[1];
                providedIncentive.Value = result.AbsoluteValue;

                var sign = (DataGridViewTextBoxCell)dataGridView1.Rows[row].Cells[2];
                sign.Value = result.Sign;

                row++;
            }

            if (dataGridView1.RowCount > 0)
            {
                dataGridView1.CurrentCell = dataGridView1.Rows[dataGridView1.RowCount - 1].Cells[0];
            }
        }
Example #4
0
        private void WriteToDataGridView()
        {
            dataGridView1.Rows.Clear();
            var context = new IllusionsPerceptionContext();
            var data    = context.User;

            var row = 0;

            foreach (var result in data.Where(result => result.Group != null))
            {
                if (result.Name != "admin")
                {
                    dataGridView1.Rows.Add();
                    var numberDisplay = (DataGridViewTextBoxCell)dataGridView1.Rows[row].Cells[0];
                    numberDisplay.Value = row + 1;

                    var providedIncentive = (DataGridViewTextBoxCell)dataGridView1.Rows[row].Cells[1];
                    providedIncentive.Value = result.Name;

                    var groupNumber = (DataGridViewTextBoxCell)dataGridView1.Rows[row].Cells[2];
                    groupNumber.Value = result.Group;

                    var id = (DataGridViewTextBoxCell)dataGridView1.Rows[row].Cells[3];
                    id.Value = result.Id;

                    row++;
                }
            }

            if (dataGridView1.RowCount > 0)
            {
                dataGridView1.CurrentCell = dataGridView1.Rows[dataGridView1.RowCount - 1].Cells[0];
            }
        }
Example #5
0
        public Form8()
        {
            var context = new IllusionsPerceptionContext();

            _number1 = int.Parse(context.Settings.First(x => x.Name == "Предъявлений1").Value);
            InitializeComponent();
            label3.Text = _number.ToString();
            label5.Text = _number1.ToString();
        }
Example #6
0
        public Form18()
        {
            InitializeComponent();

            var context = new IllusionsPerceptionContext();
            var number  = double.Parse(context.Settings.FirstOrDefault(x => x.Name == "Коэфициент").Value);

            OutputOfImage(number);
        }
Example #7
0
        private void WriteInformation()
        {
            var context = new IllusionsPerceptionContext();

            label12.Text = context.Settings.First(x => x.Name == "Предъявлений1").Value;
            label13.Text = context.Settings.First(x => x.Name == "Предварительная").Value;
            label16.Text = context.Settings.First(x => x.Name == "Контрольная").Value;
            label14.Text = context.Settings.First(x => x.Name == "Экспозиция").Value + " мс.";
            label18.Text = context.Settings.First(x => x.Name == "Задержка").Value + " мс.";
        }
Example #8
0
        private void button4_Click(object sender, System.EventArgs e)
        {
            var context = new IllusionsPerceptionContext();

            var count = context.User.Count();
            var user  = context.User.ToList();

            _id = user[count - 1].Id;

            if (_number > _number1)
            {
                button4.Enabled = false;
                button6.Visible = true;
            }
            else
            {
                var length        = 590;
                var center        = length / 2;
                var value         = center - button3.Location.X + 49;
                var absoluteValue = 0;
                var sign          = "";
                if (value < 0)
                {
                    absoluteValue = Math.Abs(value);
                    sign          = "-";
                }
                else
                {
                    absoluteValue = value;
                    sign          = "+";
                }

                context.Experiment1Result.Add(new Experiment1Result
                {
                    Id_User          = _id,
                    AbsoluteValue    = absoluteValue,
                    Sign             = sign,
                    NumberDisplay    = _number,
                    AllNumberDisplay = _number1
                });
                context.SaveChanges();
                _number++;
                if (_number == _number1 + 1)
                {
                    button4.Enabled = false;
                    button6.Visible = true;
                }
                else
                {
                    label3.Text = _number.ToString();
                }
                button3.Location = new Point(new Random().Next(103, 636), 280);
            }
        }
Example #9
0
        public Form12()
        {
            InitializeComponent();
            var context = new IllusionsPerceptionContext();
            var count   = context.User.Count();
            var user    = context.User.ToList();
            var id      = user[count - 1].Id;

            WriteToDataGridView(id);
            _id = id;
        }
Example #10
0
        public Form11()
        {
            InitializeComponent();
            var context = new IllusionsPerceptionContext();

            _count1      = int.Parse(context.Settings.First(x => x.Name == "Предварительная").Value);
            _count2      = int.Parse(context.Settings.First(x => x.Name == "Контрольная").Value);
            _coefficient = double.Parse(context.Settings.FirstOrDefault(x => x.Name == "Коэфициент").Value);

            _number1    = _count1 + _count2;
            label5.Text = _number1.ToString();
        }
Example #11
0
        private void button2_Click(object sender, EventArgs e)
        {
            var number  = comboBox1.SelectedItem.ToString();
            var context = new IllusionsPerceptionContext();
            var model   = new Settings()
            {
                Id = 6, Name = "Коэфициент", Value = number
            };

            context.Entry(model).State = EntityState.Modified;
            context.SaveChanges();

            OutputOfImage(double.Parse(number));
        }
Example #12
0
        private void button6_Click(object sender, EventArgs e)
        {
            var number  = comboBox3.SelectedItem.ToString();
            var context = new IllusionsPerceptionContext();
            var model   = new Settings()
            {
                Id = 3, Name = "Контрольная", Value = number
            };

            context.Entry(model).State = EntityState.Modified;
            context.SaveChanges();

            WriteInformation();
        }
Example #13
0
        private void WorkWithForm(int number)
        {
            var context  = new IllusionsPerceptionContext();
            var exposure = int.Parse(context.Settings.FirstOrDefault(x => x.Name == "Экспозиция").Value);
            var delay    = int.Parse(context.Settings.FirstOrDefault(x => x.Name == "Задержка").Value);

            Thread.Sleep(delay);
            GetPicture();
            pictureBox1.Update();
            Thread.Sleep(exposure);
            pictureBox1.Image = null;
            pictureBox1.Invalidate();
            ShowAnswerButton();
        }
Example #14
0
        private void button1_Click(object sender, EventArgs e)
        {
            var context = new IllusionsPerceptionContext();

            label7.Visible = false;
            label4.Visible = false;
            label5.Visible = false;
            var name        = textBox1.Text;
            var groupNumber = int.Parse(textBox2.Text);
            var user        = context.User.ToList();
            var number1     = int.Parse(context.Settings.First(x => x.Name == "Предъявлений1").Value);
            var _count1     = int.Parse(context.Settings.First(x => x.Name == "Предварительная").Value);
            var _count2     = int.Parse(context.Settings.First(x => x.Name == "Контрольная").Value);
            var number2     = _count1 + _count2;

            if (user.Any(x => x.Name == name &&
                         user.Any(m => m.Group == groupNumber)))
            {
                var id = user.First(x => x.Name == name).Id;

                if (context.Experiment1Result.Count(x => x.Id_User == id) == number1 &&
                    context.Experiment2Result.Count(x => x.Id_User == id) == number2)
                {
                    label6.Visible = true;
                }
                else
                {
                    var result = MessageBox.Show("У Вас есть незавершенные опыты, хотите продолжить?", "Незавершенные опыты", MessageBoxButtons.YesNo);

                    if (result == DialogResult.Yes)
                    {
                        var nForm = new Form17(id);
                        nForm.FormClosed += (o, ep) => this.Close();
                        nForm.Show();
                        this.Hide();
                    }
                }
            }
            else
            {
                context.User.Add(new User {
                    Name = name, Group = groupNumber, Date = DateTime.Now
                });
                context.SaveChanges();

                label4.Visible  = true;
                button3.Visible = true;
            }
        }
Example #15
0
        private string ExperimentResult()
        {
            var context = new IllusionsPerceptionContext();
            var user    = context.User.FirstOrDefault(x => x.Id == _id);

            var result = new StringBuilder();

            var numberExperiment = "Опыт №1\n\n";
            var experimentResult = context.Experiment1Result.Where(x => x.Id_User == _id).ToList();

            result.Append(numberExperiment);
            var str1 = "============================\n";
            var str2 = "|       |      Ошибка      |\n";
            var str3 = "|N подр.|------------------|\n";
            var str4 = "|       |Абс. величина|Знак|\n";
            var str5 = "|--------------------------|\n";

            result.Append(str1);
            result.Append(str2);
            result.Append(str3);
            result.Append(str4);
            result.Append(str5);

            foreach (var res in experimentResult)
            {
                var numberdisplay = res.NumberDisplay.ToString();
                if (numberdisplay.Length == 1)
                {
                    numberdisplay += " ";
                }

                var absoluteValue = res.AbsoluteValue.ToString("##0");
                if (absoluteValue.Length == 1)
                {
                    absoluteValue += "  ";
                }
                if (absoluteValue.Length == 2)
                {
                    absoluteValue += " ";
                }
                var str6 = string.Format("|   {0}  |     {1}     |  {2} |\n", numberdisplay, absoluteValue, res.Sign);
                result.Append(str6);
            }

            result.Append(str1);
            return(result.ToString());
        }
Example #16
0
        private string ExperimentResult()
        {
            var context = new IllusionsPerceptionContext();
            var user    = context.User.FirstOrDefault(x => x.Id == _id);

            var result = new StringBuilder();

            var numberExperiment = "Опыт №2\n\n";
            var experimentResult = context.Experiment2Result.Where(x => x.Id_User == _id).ToList();

            result.Append(numberExperiment);
            var str1 = "================================================\n";
            var str2 = "| N |Ответ испытуемого|Верный ответ|Уверенность|\n";
            var str3 = "|----------------------------------------------|\n";

            result.Append(str1);
            result.Append(str2);
            result.Append(str3);

            foreach (var res in experimentResult)
            {
                var numberdisplay = res.NumberDisplay.ToString();
                if (numberdisplay.Length == 1)
                {
                    numberdisplay += " ";
                }

                var testeeResponse = res.TesteeResponse;
                if (testeeResponse.Length == 5)
                {
                    testeeResponse += " ";
                }

                var correctAnswer = res.CorrectAnswer;
                if (correctAnswer.Length == 5)
                {
                    correctAnswer += " ";
                }

                var str4 = string.Format("|{0} |     {1}      |   {2}   |     {3}     |\n", numberdisplay, testeeResponse, correctAnswer, res.Confidence);
                result.Append(str4);
            }

            result.Append(str1);
            return(result.ToString());
        }
Example #17
0
        private void button6_Click(object sender, EventArgs e)
        {
            var context = new IllusionsPerceptionContext();
            var count   = context.User.Count();
            var user    = context.User.ToList();
            var id      = user[count - 1].Id;

            if (context.Experiment2Result.Any(x => x.Id_User == id))
            {
                label3.Visible = true;
            }
            else
            {
                var nForm = new Form11();
                nForm.FormClosed += (o, ep) => this.Close();
                nForm.Show();
                this.Hide();
            }
        }
Example #18
0
        public Form6()
        {
            InitializeComponent();
            var context = new IllusionsPerceptionContext();
            var count   = context.User.Count();
            var user    = context.User.ToList();
            var id      = user[count - 1].Id;

            _id = id;

            if (context.Experiment1Result.Any(x => x.Id_User == id))
            {
                button3.Enabled = true;
            }
            if (context.Experiment2Result.Any(x => x.Id_User == id))
            {
                button5.Enabled = true;
            }
        }
Example #19
0
        private void button3_Click(object sender, EventArgs e)
        {
            var id = int.Parse(dataGridView1.CurrentRow.Cells[3].Value.ToString());

            var context = new IllusionsPerceptionContext();
            var model   = new User {
                Id = id
            };

            var result = MessageBox.Show("Вы уверены, что хотите удалить данного студента?", "Удаление студента", MessageBoxButtons.YesNo);

            if (result == DialogResult.Yes)
            {
                context.User.Attach(model);
                context.User.Remove(model);
                context.SaveChanges();

                WriteToDataGridView();
            }
        }
Example #20
0
        private void WriteToDb()
        {
            var context = new IllusionsPerceptionContext();

            var count = context.User.Count();
            var user  = context.User.ToList();

            _id = user[count - 1].Id;

            context.Experiment2Result.Add(new Experiment2Result
            {
                Id_User          = _id,
                TesteeResponse   = _testeeAnswer,
                CorrectAnswer    = _rightAnswer,
                Confidence       = _confidence,
                NumberDisplay    = _number,
                AllNumberDisplay = _number1
            });
            context.SaveChanges();
        }
Example #21
0
        private void WriteToDataGridView2(int id)
        {
            dataGridView2.Rows.Clear();
            var context = new IllusionsPerceptionContext();
            var data    = context.Experiment2Result.Where(x => x.Id_User == id);

            var row = 0;

            foreach (var result in data)
            {
                dataGridView2.Rows.Add();
                var numberDisplay = (DataGridViewTextBoxCell)dataGridView2.Rows[row].Cells[0];
                numberDisplay.Value = result.NumberDisplay;

                var correctAnswer = (DataGridViewTextBoxCell)dataGridView2.Rows[row].Cells[1];
                correctAnswer.Value = result.CorrectAnswer;

                var testeeResponse = (DataGridViewTextBoxCell)dataGridView2.Rows[row].Cells[2];
                testeeResponse.Value = result.TesteeResponse;

                var confidence = (DataGridViewTextBoxCell)dataGridView2.Rows[row].Cells[3];
                confidence.Value = result.Confidence;

                if (result.CorrectAnswer == result.TesteeResponse)
                {
                    dataGridView2.Rows[row].Cells[1].Style.BackColor = Color.Green;
                    dataGridView2.Rows[row].Cells[2].Style.BackColor = Color.Green;
                }
                else
                {
                    dataGridView2.Rows[row].Cells[1].Style.BackColor = Color.Red;
                    dataGridView2.Rows[row].Cells[2].Style.BackColor = Color.Red;
                }
                row++;
            }

            if (dataGridView2.RowCount > 0)
            {
                dataGridView2.CurrentCell = dataGridView2.Rows[dataGridView2.RowCount - 1].Cells[0];
            }
        }
Example #22
0
        private void WorkWithForm(int number)
        {
            if (number <= _number1)
            {
                label3.Text = _number.ToString();
                var context  = new IllusionsPerceptionContext();
                var exposure = int.Parse(context.Settings.FirstOrDefault(x => x.Name == "Экспозиция").Value);
                var delay    = int.Parse(context.Settings.FirstOrDefault(x => x.Name == "Задержка").Value);

                Thread.Sleep(delay);
                GetPicture(number);
                pictureBox1.Update();
                Thread.Sleep(exposure);
                pictureBox1.Image = null;
                pictureBox1.Invalidate();
                ShowAnswerButton();
            }
            else
            {
                button6.Visible = true;
            }
        }
Example #23
0
        static void Main()
        {
            using (var context = new IllusionsPerceptionContext())
            {
                if (!context.Database.Exists())
                {
                    context.User.Add(new User {
                        Name = "admin", Group = 0, Password = "******"
                    });

                    context.Settings.Add(new Settings {
                        Name = "Предъявлений1", Value = "30"
                    });
                    context.Settings.Add(new Settings {
                        Name = "Предварительная", Value = "6"
                    });
                    context.Settings.Add(new Settings {
                        Name = "Контрольная", Value = "4"
                    });
                    context.Settings.Add(new Settings {
                        Name = "Экспозиция", Value = "200"
                    });
                    context.Settings.Add(new Settings {
                        Name = "Задержка", Value = "500"
                    });
                    context.Settings.Add(new Settings {
                        Name = "Коэфициент", Value = "1,2"
                    });

                    context.SaveChanges();
                }
            }

            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Form1());
        }
Example #24
0
        private void button3_Click(object sender, EventArgs e)
        {
            label2.Visible = false;

            var context           = new IllusionsPerceptionContext();
            var name              = dataGridView1.CurrentRow.Cells[0].Value.ToString();
            var experimentResult  = context.Experiment1Result.Where(x => x.Id_User == _id).ToList();
            var experimentResult1 = context.Experiment2Result.Where(x => x.Id_User == _id).ToList();

            var count  = int.Parse(context.Settings.FirstOrDefault(x => x.Name == "Предъявлений1").Value);
            var count1 = int.Parse(context.Settings.FirstOrDefault(x => x.Name == "Предварительная").Value)
                         + int.Parse(context.Settings.FirstOrDefault(x => x.Name == "Контрольная").Value);

            Experiment1Result rez = new Experiment1Result();

            if (experimentResult.Count != 0)
            {
                rez = experimentResult[experimentResult.Count - 1];
            }
            else
            {
                rez.NumberDisplay    = 0;
                rez.AllNumberDisplay = count;
            }

            Experiment2Result rez1 = new Experiment2Result();

            if (experimentResult1.Count != 0)
            {
                rez1 = experimentResult1[experimentResult1.Count - 1];
            }
            else
            {
                rez1.NumberDisplay    = 0;
                rez1.AllNumberDisplay = count1;
            }

            switch (name)
            {
            case "Опыт №1":
                if (rez.NumberDisplay == rez.AllNumberDisplay)
                {
                    label2.Visible = true;
                    break;
                }
                else
                {
                    var nForm = new Form8(rez.NumberDisplay + 1, _id);
                    nForm.FormClosed += (o, ep) => this.Close();
                    nForm.Show();
                    this.Hide();
                    break;
                }

            case "Опыт №2":
                if (rez1.NumberDisplay == rez1.AllNumberDisplay)
                {
                    label2.Visible = true;
                    break;
                }
                else
                {
                    var nForm = new Form11(rez1.NumberDisplay + 1, _id);
                    nForm.FormClosed += (o, ep) => this.Close();
                    nForm.Show();
                    this.Hide();
                    break;
                }
            }
        }
Example #25
0
        private void WriteData(int id)
        {
            _id = id;
            var context          = new IllusionsPerceptionContext();
            var experimentResult = context.Experiment1Result.Where(x => x.Id_User == id).ToList();

            if (experimentResult.Count != 0)
            {
                var rez = experimentResult[experimentResult.Count - 1];

                dataGridView1.Rows.Add();

                var name = (DataGridViewTextBoxCell)dataGridView1.Rows[0].Cells[0];
                name.Value = "Опыт №1";

                var numberDisplay = (DataGridViewTextBoxCell)dataGridView1.Rows[0].Cells[1];
                numberDisplay.Value = rez.NumberDisplay.ToString();

                var allNumberDisplay = (DataGridViewTextBoxCell)dataGridView1.Rows[0].Cells[2];
                allNumberDisplay.Value = rez.AllNumberDisplay.ToString();
                if (rez.NumberDisplay == rez.AllNumberDisplay)
                {
                    dataGridView1.Rows[0].DefaultCellStyle.BackColor = Color.Green;
                }
                else
                {
                    dataGridView1.Rows[0].DefaultCellStyle.BackColor = Color.Red;
                }
            }
            else
            {
                dataGridView1.Rows.Add();

                var name = (DataGridViewTextBoxCell)dataGridView1.Rows[0].Cells[0];
                name.Value = "Опыт №1";

                var numberDisplay = (DataGridViewTextBoxCell)dataGridView1.Rows[0].Cells[1];
                numberDisplay.Value = 0.ToString();

                var allNumberDisplay = (DataGridViewTextBoxCell)dataGridView1.Rows[0].Cells[2];
                allNumberDisplay.Value = context.Settings.FirstOrDefault(x => x.Name == "Предъявлений1").Value;
                dataGridView1.Rows[0].DefaultCellStyle.BackColor = Color.Red;
            }

            var experimentResult1 = context.Experiment2Result.Where(x => x.Id_User == id).ToList();

            if (experimentResult1.Count != 0)
            {
                var rez1 = experimentResult1[experimentResult1.Count - 1];

                dataGridView1.Rows.Add();

                var name1 = (DataGridViewTextBoxCell)dataGridView1.Rows[1].Cells[0];
                name1.Value = "Опыт №2";

                var numberDisplay1 = (DataGridViewTextBoxCell)dataGridView1.Rows[1].Cells[1];
                numberDisplay1.Value = rez1.NumberDisplay.ToString();

                var allNumberDisplay1 = (DataGridViewTextBoxCell)dataGridView1.Rows[1].Cells[2];
                allNumberDisplay1.Value = rez1.AllNumberDisplay.ToString();

                if (rez1.NumberDisplay == rez1.AllNumberDisplay)
                {
                    dataGridView1.Rows[1].DefaultCellStyle.BackColor = Color.Green;
                }
                else
                {
                    dataGridView1.Rows[1].DefaultCellStyle.BackColor = Color.Red;
                }
            }
            else
            {
                dataGridView1.Rows.Add();

                var name = (DataGridViewTextBoxCell)dataGridView1.Rows[1].Cells[0];
                name.Value = "Опыт №2";

                var numberDisplay = (DataGridViewTextBoxCell)dataGridView1.Rows[1].Cells[1];
                numberDisplay.Value = 0.ToString();

                var allNumberDisplay = (DataGridViewTextBoxCell)dataGridView1.Rows[1].Cells[2];
                allNumberDisplay.Value = int.Parse(context.Settings.FirstOrDefault(x => x.Name == "Предварительная").Value)
                                         + int.Parse(context.Settings.FirstOrDefault(x => x.Name == "Контрольная").Value);
                dataGridView1.Rows[1].DefaultCellStyle.BackColor = Color.Red;
            }
        }