public Form1() { InitializeComponent(); void clearText() { txtA.Text = ""; txtB.Text = ""; txtC.Text = ""; } radio1.CheckedChanged += (s, e) => { // S = a /2 *h lblB.Text = "Высота"; lblC.Visible = false; txtC.Visible = false; clearText(); }; radio3.CheckedChanged += (s, e) => { lblB.Text = "Сторона B"; lblC.Visible = true; txtC.Visible = true; clearText(); }; btnForm2.Click += (s, e) => { Form2 form2 = new Form2(); form2.Owner = this; form2.ShowDialog(); }; btnStart.Click += (s, e) => { if (radio3.Checked) { if (txtA.Text.Length != 0 && txtB.Text.Length != 0 && txtC.Text.Length != 0 && Regex.IsMatch(txtA.Text, @"^\d+$") && Regex.IsMatch(txtB.Text, @"^\d+$") && Regex.IsMatch(txtC.Text, @"^\d+$")) { Triangle triangle = new Triangle(Convert.ToDouble(txtA.Text), Convert.ToDouble(txtB.Text), Convert.ToDouble(txtC.Text)); listTriangle.Items.Clear(); listTriangle.Items.Add("Сторона a"); listTriangle.Items.Add("Сторона b"); listTriangle.Items.Add("Сторона c"); listTriangle.Items[0].SubItems.Add(triangle.outputA()); listTriangle.Items[1].SubItems.Add(triangle.outputB()); listTriangle.Items[2].SubItems.Add(triangle.outputC()); listTriangle.Items.Add("Периметр"); listTriangle.Items[3].SubItems.Add(Convert.ToString(triangle.Perimeter())); listTriangle.Items.Add("Полу периметр"); listTriangle.Items[4].SubItems.Add(Convert.ToString(triangle.SemiPerimter())); listTriangle.Items.Add("Площадь"); listTriangle.Items[5].SubItems.Add(Convert.ToString(triangle.Surface())); listTriangle.Items.Add("Существует?"); if (triangle.ExistTriangle) { listTriangle.Items[6].SubItems.Add("Существует"); } else { listTriangle.Items[6].SubItems.Add("Не существует"); } listTriangle.Items.Add("Высота"); listTriangle.Items[7].SubItems.Add(Convert.ToString(triangle.Height())); listTriangle.Items.Add("Высота A"); listTriangle.Items.Add("Высота B"); listTriangle.Items.Add("Высота C"); listTriangle.Items[8].SubItems.Add(Convert.ToString(triangle.hA())); listTriangle.Items[9].SubItems.Add(Convert.ToString(triangle.hB())); listTriangle.Items[10].SubItems.Add(Convert.ToString(triangle.hC())); listTriangle.Items.Add("Медиана"); listTriangle.Items[11].SubItems.Add(Convert.ToString(triangle.Median())); listTriangle.Items.Add("Спецификатор"); listTriangle.Items[12].SubItems.Add(triangle.TriangleType()); pictureTriangle.Image = Image.FromFile(triangle.ImageSource()); } else { MyMethods.WrongValues(this, new List <Control>() { txtA, txtB, txtC }); } } else if (radio1.Checked) { if (txtA.Text.Length != 0 && txtB.Text.Length != 0 && Regex.IsMatch(txtA.Text, @"^\d+$") && Regex.IsMatch(txtB.Text, @"^\d+$")) { Triangle triangle = new Triangle(Convert.ToDouble(txtA.Text), Convert.ToDouble(txtB.Text)); listTriangle.Items.Clear(); listTriangle.Items.Add("Сторона A"); listTriangle.Items[0].SubItems.Add(triangle.outputA()); listTriangle.Items.Add("Высота"); listTriangle.Items[1].SubItems.Add(Convert.ToString(triangle.outputH())); listTriangle.Items.Add("Площадь"); listTriangle.Items[2].SubItems.Add(Convert.ToString(triangle.Side1Surface())); } else { MyMethods.WrongValues(this, new List <Control>() { txtA, txtB }); } } }; }
public Form2() { InitializeComponent(); Load += (s, e) => { bool firstTime = true; Size = new Size(788, 190); void ClearCalculated() { foreach (var lbl in panelValues.Controls.OfType <Label>()) { lbl.Text = ""; } } void HideValues() { if (firstTime) { Size = new Size(788, 470); firstTime = false; } } btn3Side.Click += (ss, ee) => { HideValues(); btn3Side.Enabled = false; panel3Side.Enabled = true; panel1Side.Enabled = false; btn1Side.Enabled = true; btnCalculate.Enabled = true; }; btn1Side.Click += (ss, ee) => { HideValues(); btn1Side.Enabled = false; panel1Side.Enabled = true; panel3Side.Enabled = false; btn3Side.Enabled = true; btnCalculate.Enabled = true; }; btnCalculate.Click += (ss, ee) => { if (!btn3Side.Enabled) { if (numericA.Value.ToString().Trim().Length != 0 && numericB.Value.ToString().Trim().Length != 0 && numericC.Value.ToString().Trim().Length != 0 && Regex.IsMatch(numericA.Value.ToString(), @"^\d+$") && Regex.IsMatch(numericB.Value.ToString(), @"^\d+$") && Regex.IsMatch(numericC.Value.ToString(), @"^\d+$")) { Triangle triangle = new Triangle((double)numericA.Value, (double)numericB.Value, (double)numericC.Value); ClearCalculated(); lblValues.Text = "Значения"; lblValA.Text = "Сторона А:"; lblValB.Text = "Сторона B:"; lblValC.Text = "Сторона C:"; lblValPerimeter.Text = "Периметр:"; lblValSemiPerimeter.Text = "Полу периметр:"; lblValSurface.Text = "Площадь:"; lblValHeight.Text = "Высота:"; lblValHeightA.Text = "Высота A:"; lblValHeightB.Text = "Высота B:"; lblValHeightC.Text = "Высота C:"; lblValMedian.Text = "Медиана:"; lblValSpecification.Text = "Спецификатор:"; lblValExists.Text = "Существует:"; lblValuesSideA.Text = triangle.outputA(); lblValuesSideB.Text = triangle.outputB(); lblValuesSideC.Text = triangle.outputC(); lblValuesPerimeter.Text = Convert.ToString(Math.Round(triangle.Perimeter(), 3)); lblValuesSemiPerimeter.Text = Convert.ToString(Math.Round(triangle.SemiPerimter(), 3)); lblValuesSurface.Text = Convert.ToString(Math.Round(triangle.Surface(), 3)); lblValuesHeight.Text = Convert.ToString(Math.Round(Convert.ToDouble(triangle.outputH()), 3)); lblValuesHeightA.Text = Convert.ToString(Math.Round(triangle.hA(), 3)); lblValuesHeightB.Text = Convert.ToString(Math.Round(triangle.hB(), 3)); lblValuesHeightC.Text = Convert.ToString(Math.Round(triangle.hC(), 3)); lblValuesMedian.Text = Convert.ToString(triangle.Median()); lblValuesSpecification.Text = triangle.TriangleType(); lblValuesExists.Text = triangle.ExistTriangle ? "Да" : "Нет"; panelValues.Size = new Size(745, 330); panelPicture.Location = new Point(9, 770); pictureTriangle.Image = Image.FromFile(triangle.ImageSource()); Size = new Size(788, 963); } else { MessageBox.Show("Заполните поля правильно", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); MyMethods.WrongValuesNumeric(this, new List <NumericUpDown>() { numericA, numericB, numericC }); } } else { if (numericAHeight.Value.ToString().Trim().Length != 0 && numericHeight.Value.ToString().Trim().Length != 0 && Regex.IsMatch(numericAHeight.Value.ToString(), @"^\d+$") && Regex.IsMatch(numericAHeight.Value.ToString(), @"^\d+$")) { Triangle triangle = new Triangle((double)numericAHeight.Value, (double)numericAHeight.Value); ClearCalculated(); lblValues.Text = "Значения"; lblValA.Text = "Сторона А:"; lblValB.Text = "Высота:"; lblValC.Text = "Площадь:"; panelValues.Size = new Size(745, 106); panelPicture.Location = new Point(9, 550); Size = new Size(788, 600); lblValuesSideA.Text = triangle.outputA(); lblValuesSideB.Text = triangle.outputH(); lblValuesSideC.Text = Convert.ToString(Math.Round(triangle.Side1Surface(), 3)); pictureTriangle.Image = Image.FromFile(triangle.ImageSource()); } else { MessageBox.Show("Заполните поля правильно", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); MyMethods.WrongValuesNumeric(this, new List <NumericUpDown>() { numericAHeight, numericHeight }); } } }; }; }