コード例 #1
0
        private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            LineWhigth1.Tag = Convert.ToInt32(LineWhigth1.Items[LineWhigth1.SelectedIndex]);
            string pathPict = "..\\..\\Line";

            pathPict += LineWhigth1.Tag + ".jpg";
            PicterLineWhigth.Image = Image.FromFile(pathPict);

            if (isChosen)
            {
                shapes[chosenElement].pen.Width = Convert.ToInt32(LineWhigth1.GetItemText(this.LineWhigth1.SelectedItem));
                MainForm_Paint(null, null);
            }
        }
コード例 #2
0
        private void MainForm_MouseDown(object sender, MouseEventArgs e)
        {
            if (activeButton != Button.None)
            {
                shapeCenter = new Point(e.X, e.Y);


                switch (activeButton)
                {
                case Button.Ellipse:
                    shapes.Add(new Ellipse(e.X, e.Y, 0, 0));
                    break;

                case Button.Rectangle:
                    shapes.Add(new Rect(e.X, e.Y, 0, 0));
                    break;

                case Button.Triangle:
                    shapes.Add(new TriangleRight(e.X, e.Y, 0, 0));
                    break;

                case Button.Rhomb:
                    shapes.Add(new Rhomb(e.X, e.Y, 0, 0));
                    break;

                case Button.Bezier:
                    shapes.Add(new Bezier(e.X, e.Y, 0, 0));
                    break;
                }

                shapes[shapes.Count - 1].pen.Color = ColorLineLabel.BackColor;
                shapes[shapes.Count - 1].pen.Width = Convert.ToInt32(LineWhigth1.GetItemText(this.LineWhigth1.SelectedItem));
                ((SolidBrush)(shapes[shapes.Count - 1].brush)).Color = ColorBrashLabel.BackColor;
                frames.Add(new Rectangle(e.X, e.Y, 0, 0));
                isDrawing = true;
            }

            else if (isChosen && (edge = IsOnRectacleBorder(e.X, e.Y)) != FrameEdge.None)
            {
                isResizing = true;
            }

            else // выделяем фигуру
            {
                delta = new Point(e.X, e.Y);
                int index = -1;

                foreach (Shape s in shapes)
                {
                    index++;
                    if (frames[index].Contains(e.X, e.Y))
                    {
                        chosenElement = index;
                        isChosen      = true;
                    }
                }

                if (isChosen)
                {
                    MainForm_Paint(null, null);
                }
            }
        }