더블버퍼링으로 그림을 그릴려고 하는데 폼이 2개가 있음.
1번 폼 form1에선 이런저런 세팅을 하고, 2번 폼 form2 에선 그림을 보여주고 싶음.
즉, 1번에서 세팅 후 계산하면 1번 폼에 있는 그리기! 버튼을 누르면 form2가 짜잔~ 하고 나타나면서
그림을 쓱쓱 그리는거임.
그림 그릴 때 더블버퍼링을 하는 코드를 보고 내가 이해한건 이럼
아직 고수가 아니라 작업 순서대로 쓰겠음..
1. 비트맵 객체를 만듬. 이 때 파라메터로 들어가는건 비트맵의 크기. 따라서 비트맵이 특정 폼에 종속되지 않을 것이라고 생각했음
그냥 메모리 상 어딘가를 비트맵 선언할 때 입력한 파라메터 만큼 점유하고 있다 라고 생각함
2. 그래픽스 객체를 두개 만듬. 그래픽스1은 비트맵 객체와 링크, 그래픽스2는 그림을 보여줄 폼2이랑 링크
3. 비트맵 객체와 연결한 그래픽스1 에게 이것저것 그림
4. 그림이 그려진 비트맵을 그래픽스2 에게 넘기면 그래픽스2가 그걸 처음 링크한 폼2에 그려줌.
위 순서로 짠 이유 두가지 있는데 우선 비트맵 객체에 따로 폼에 대한 정보를 넘긴게 없어서 비트맵은 어떤 폼에 그림을 그릴지는 상관 없다고 생각했음. 그리고 그래픽스2를 그림을 그리고 싶은 폼2에 연결하면 해당 폼에 대한 그림을 그릴 것이라고 생각했지만... 실제 코딩을 하니까 폼2에 뭐 생성되는게 없었음;
알고 싶은 것은 그래픽스와 비트맵 객체의 작동이 내가 생각한데로 움직인 것이 맞는지 여부임
댓글 0