티스토리 뷰

단순히 말해서 delegate 와 Invoke 를 같이 사용할때의 방법 (헐 이말도 어렵네 쩝)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
//[1]인자가 있는 델리게이트 정의
delegate void MyDeleGate(string value);
 
//[2]델리게이트 변수선언
MyDeleGate mydelegate;
 
//[3]델리게이트 개체생성
mydelegate = new MyDeleGate(userFunc);
 
//델리게이트 호출
mydelegate("씨발");
 
//[4]델리게이트에서 호출할 사용자함수 정의
void userFunc()
{
    //사용자 쓰레드에서 UI 디스플레이를 위한 루틴
    this.Invoke(new MyDeleGate(userFunct),value);
}
 
//[5]Invoke 에서 호출할 디스플레이를 함수정의
void userCall(string value)
{
    // value 값 디스플레이
    //...
}
// 호출되는 함수가 사용자쓰레드에서 디스플레이 하는 루틴이 아니라면 
// 바로 userCall 함수를 [3]델리게이트 개체생성시 
// mydelegate = new MyDeleGate(userCall); 로 사용가능
 
 
cs

설명이 어렵다는건 읽는 사람의 이해력 문제라기 보다 작성자의 이해가 부족한 상태에서 글을 쓴 탓 입니다 ㅜ.,ㅜ