본 글은 http://www.hoons.kr 에 있는 내용을 나름대로 이해되는 부분에 한해서 적은 것입니다.
타이머 사용을 위해서 네임 스페이스를 하나 선언합니다.
using System.Windows.Threading;
타이머 변수를 하나 선언합니다.
DispatcherTimer dt = new DispatcherTimer();
그리고 난수를 하나 생성하게 됩니다.
Random ran = new Random();
이후에 코드에 맞는 해당 값들의 전역 변수들을 선언 하면 됩니다.
dt의 타이머를 사용하기 위해서 초기 설정을 하게 됩니다.
dt.Interval = TimeSpan.FromMilliseconds(30);
dt.Tick += new EventHandler(dt_Tick);
dt.Start();
Tick에 추가한 이벤트 핸들러에 대한 함수 원형을 추가 합니다.
void dt_Tick(object sender, EventArgs e)
{
.....
}
..... 이상 코드는 여기까지.......
Start()를 하고 나면 계속해서 타이머가 동작 하게 됩니다.
타이머 동작을 멈추고 싶다면 dt.Stop()를 해주면 됩니다.
이후에 참고할 만한 코드는
* 랜덤 함수는 ran.NextDouble() 를 사용해서 double형 값을 가져 올수 있습니다.
물론 double 말고도 int형을 가져 오는 함수도 존재 합니다.
* Canvas에 있는 오브젝트의 위치를 변경하기 위해서 아래와 같은 코드가 가능해 집니다.
Canvas.SetLeft(im, currX);
Canvas.SetTop(im, currY);
- im은 Canvas에 있는 객체의 Name 이며, currX, currY 는 전역 변수로 가지고 있는
위치가 되겠습니다.
* 해당 값의 절대값을 사용하기 위해서 아래의 코드를 사용합니다.
if (Math.Abs(currX - destX) < 1)
{
destX = ran.NextDouble() * this.ActualWidth;
destY = ran.NextDouble() * this.ActualHeight;
}
타이머 사용을 위해서 네임 스페이스를 하나 선언합니다.
using System.Windows.Threading;
타이머 변수를 하나 선언합니다.
DispatcherTimer dt = new DispatcherTimer();
그리고 난수를 하나 생성하게 됩니다.
Random ran = new Random();
이후에 코드에 맞는 해당 값들의 전역 변수들을 선언 하면 됩니다.
dt의 타이머를 사용하기 위해서 초기 설정을 하게 됩니다.
dt.Interval = TimeSpan.FromMilliseconds(30);
dt.Tick += new EventHandler(dt_Tick);
dt.Start();
Tick에 추가한 이벤트 핸들러에 대한 함수 원형을 추가 합니다.
void dt_Tick(object sender, EventArgs e)
{
.....
}
..... 이상 코드는 여기까지.......
Start()를 하고 나면 계속해서 타이머가 동작 하게 됩니다.
타이머 동작을 멈추고 싶다면 dt.Stop()를 해주면 됩니다.
이후에 참고할 만한 코드는
* 랜덤 함수는 ran.NextDouble() 를 사용해서 double형 값을 가져 올수 있습니다.
물론 double 말고도 int형을 가져 오는 함수도 존재 합니다.
* Canvas에 있는 오브젝트의 위치를 변경하기 위해서 아래와 같은 코드가 가능해 집니다.
Canvas.SetLeft(im, currX);
Canvas.SetTop(im, currY);
- im은 Canvas에 있는 객체의 Name 이며, currX, currY 는 전역 변수로 가지고 있는
위치가 되겠습니다.
* 해당 값의 절대값을 사용하기 위해서 아래의 코드를 사용합니다.
if (Math.Abs(currX - destX) < 1)
{
destX = ran.NextDouble() * this.ActualWidth;
destY = ran.NextDouble() * this.ActualHeight;
}