using System.Drawing;
// 오버라이딩이므로 이벤트를 별도 생성하실 필요 없이 코드에 붙이시면 됩니다
// MouseDown 시의 커서 위치를 저장해서, MouseMove 시에 Form의 Location에 반영하게 됩니다
private Point mCurrentPosition = new Point(0, 0); //
protected override void OnMouseDown(MouseEventArgs e)
{
base.OnMouseDown(e);
if(e.Button == MouseButtons.Left)
mCurrentPosition = new Point(-e.X, -e.Y);
}
protected override void OnMouseMove(MouseEventArgs e)
{
base.OnMouseMove(e);
if (e.Button == MouseButtons.Left)
{
this.Location = new Point(
this.Location.X + (mCurrentPosition.X + e.X),
this.Location.Y + (mCurrentPosition.Y + e.Y));// 마우스의 이동치를 Form Location에 반영한다.
}
}
'2_ 바삭바삭 프로그래밍 > C# and Visual C++' 카테고리의 다른 글
[C#] 윈폼기반 프로그래밍을 할때 Invoke() 이쁘게쓰기! (0) | 2013.02.08 |
---|---|
[C#] 윈폼에서 단축키 설정.. (0) | 2013.02.01 |
[C#] 파일 입출력 (0) | 2012.08.24 |
[C#] 웹페이지 긁어오기, 날씨 API (3) | 2012.08.21 |
[C#] 폴더에 수정사항이 발생했을때 이벤트를 발생시켜주는 컴포넌트 FileSystemWatcher (1) | 2012.08.16 |