Drag and drop shape : Drag and Draw « 2D Graphics « C# / C Sharp

Home
C# / C Sharp
1.2D Graphics
2.Class Interface
3.Collections Data Structure
4.Components
5.Data Types
6.Database ADO.net
7.Design Patterns
8.Development Class
9.Event
10.File Stream
11.Generics
12.GUI Windows Form
13.Language Basics
14.LINQ
15.Network
16.Office
17.Reflection
18.Regular Expressions
19.Security
20.Services Event
21.Thread
22.Web Services
23.Windows
24.Windows Presentation Foundation
25.XML
26.XML LINQ
C# / C Sharp by API
C# / CSharp Tutorial
C# / CSharp Open Source
C# / C Sharp » 2D Graphics » Drag and DrawScreenshots 
Drag and drop shape
Drag and drop shape

using System.Drawing;
using System.Drawing.Drawing2D;
using System.Windows.Forms;

public class TryMouse : Form {
  private Region region; 
  private int oldX = 0;
  private int oldY = 0;

  public TryMouse() {
    Size = new Size(300,200);
    BackColor = Color.White;
    GraphicsPath p = new GraphicsPath();
    p.AddPolygon(new Point[]{new Point(50,10)new Point(10,50)new Point(150,100)});
    region = new Region(p);
  }

  protected override void OnPaint(PaintEventArgs e) {
    Graphics g = e.Graphics;
    g.FillRegion(Brushes.Red, region);
    base.OnPaint(e);
  }

  protected override void OnMouseDown(MouseEventArgs e) {
    if (region.GetBounds(CreateGraphics()).Contains(e.X, e.Y)){
      oldX = e.X;
      oldY = e.Y;
    }
    base.OnMouseDown(e);
  }

  protected override void OnMouseUp(MouseEventArgs e) {
    region.Translate(e.X-oldX, e.Y-oldY);
    oldX = e.X;
    oldY = e.Y;
    Invalidate();
    base.OnMouseUp(e);
  }
  public static void Main() {
    Application.Run(new TryMouse());
  }
}

           
       
Related examples in the same category
1.Drag and Draw Demo
2.Scribble: drag and drawScribble: drag and draw
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.