DLL을 통해 참조되는 두 개의 자식 폼 (독립 실행 형 프로젝트가 참조에 추가됨)이 포함 된 MDI 응용 프로그램을 C#에서 작성했습니다. 하나의 하위 폼 (form1이라고 함)은 타이머를 사용하여 그래픽 개체를 기반으로 애니메이션을 수행합니다. 이 프로젝트 (자식 form1)는 다른 자식 폼 (form2라고 부름)이로드 될 때까지 제대로 작동합니다. 첫 번째 양식 (form1)의 애니메이션이 중지되지만이 두 번째 하위 양식 (form2)을 닫으면 아무런 문제없이 애니메이션이 계속됩니다.서로 간섭하는 두 개의 MDI 자식 폼
나는 Form2를이 코드를 사용하여 간격이 만료되면
private void FlyingBeeForm_Paint(object sender, PaintEventArgs e) {
Graphics g = e.Graphics;
DrawImages(g);
System.Threading.Thread.Sleep(50);
this.Invalidate();
}
글쎄, 두 번째 양식은 무엇이 특별합니까? 우리가 아는 전부는 물고기입니다. 단서가 없다면 두 번째 형식의 코드 조각을 주석으로 처리하십시오. –
타이머가없는 애니메이션이기도합니다. 그 form2 (물고기)는 마우스를 클릭하면, 물고기는 클릭 한 곳으로 이동합니다. – falcon2303
음, 거의 확실히 물고기를 움직이기 위해 타이머를 사용해야합니다. 루프를하면 첫 번째 양식의 타이머가 작동을 멈 춥니 다. –