미니 도형 세 개의 버튼 (직사각형, 원 및 선)이있는 응용 프로그램을 만들려고합니다. 마우스로 도형을 선택하고 움직이는 데 문제가 있습니다. C에서 마우스로 패널에 원 또는 직사각형과 같은 그림을 그리는 방법 #
class rectangle : shape
{
public int length { get; set; }
public int width { get; set; }
public override void Draw(Graphics g)
{
g.DrawRectangle(new Pen(color), new Rectangle(startx, starty, width,length));
}
}
지금, 나는 사각형의 어떤 부분에 클릭 할 때마다 내 panel1_MouseDown 내 패널에서 사각형을 선택합니다 : 예를 들어 나는 모양에서 색상, 두께 상속이 사각형 클래스가 있습니다. 그려진 도형은 모두 lstShapsOnForm이라는 목록에 추가되고 drawable은 그리기 및 속성 x y의 추상 메서드가있는 추상 클래스입니다.
는abstract class Drawable
{
public int x { get; set; }
public int y { get; set; }
public abstract void draw(Graphics g);
}
private void panel1_MouseDown(object sender, MouseEventArgs e)
{
foreach (Drawable o in lstShapsOnForm)
{
if (e.Location.X >= o.x || e.Location.X < o.x)
propertyGrid1.SelectedObject = o;
}
}
어떻게이 일을해야 ?
[그림을 그리면 어떻게 그 원을 컨트롤로 처리 할 수 있습니까? - 도형 이동 및 선택 (https://stackoverflow.com/q/38345828/3110834) 또는이 게시물 [C#에서 도형 드래그 및 이동 방법] (https://stackoverflow.com/q/38747027/3110834)을 참조하십시오. –
감사합니다. 도움이되었다. :) – Zahra
환영합니다 :) –