나는 캐논볼의 탄도를 보여주는 C# 응용 프로그램을 작성 중입니다. 그러나 내가 그것을 최소화 할 때 나는 그림 상자에 그린 궤적을 다시 가져올 때 사라진다. 이것을 막을 수있는 쉬운 방법이 있습니까?내 응용 프로그램을 최소화하면 도면이 모두 사라집니다.
답변
마우스 이벤트에서 그림을 걸 겠어요. onpaint 이벤트를 사용하면 좋을 것입니다.
편집 : 여기
은의 OnPaint() 이벤트를 사용 괜찮은 그리기 튜토리얼입니다 : 윈도우가이 양식을 다시 그릴 필요가 복원
http://www.geekpedia.com/tutorial50_Drawing-with-Csharp.html
OnPain이 고통 스럽습니다. 어떤 경우 든 유지 모드 드로잉의 일부 형식이 필요하다고 추가해야합니다. 즉, OnPaint에서 드로잉 할 * * *의 구조적 복사본이 있어야합니다. 이것은 그림을 그리는 메모리의 Bitmap 일 수 있으며 PictureBox로 복사하고 있습니다. 개별 점 또는 해당 궤도의 경로 일 수 있으므로 쉽게 다시 그릴 수 있습니다. 어떤 경우 든 수정 프로그램은 하나의 이벤트 처리기를 다른 이벤트 처리기로 교환하는 것만 큼 사소한 것은 아니며 묻는 사람은 실제로이 사실을 알지 못합니다. – Joey
조이 형을 가리켜 주셔서 고마워요! 좋은 충고도. – Botonomous
@AlesTrunda 5 년 답변 부활 : 죄송 링크가 사망했습니다. – Botonomous
. 페인트 이벤트의 일부로 도면이없는 경우 다시 그려지지 않습니다. 다른 사람이 이미 언급했듯이
이 질문은 유지 아무것도, 그래픽 객체로 그릴 때 문제가이 일
Saving a Graphics content to a file
매우 유사하다. 영구 그래픽이라고합니다. 때때로 당신은 당신이하지 않는 것보다 더 자주이 행동을 원합니다.
비트 맵 위에 그림을 그린 다음 비트 맵을 그림 상자에 복사해야합니다. 이미지. 다른 대답은 OnPaint 메서드에서 드로잉 루틴을 수행하는 것입니다.
위의 대답을 읽으십시오. 제목은 오해의 소지가 있습니다. 그는 끈기를 얻기 위해 파일에 저장해야한다고 생각했지만, 그렇지 않으면 우리는 그를 보여 줬습니다.
EDIT 여기 내가시킨 이벤트의 변경 후의 상기 링크 바로 사용 mainp.refresh
Bitmap buffer;
public Form1()
{
InitializeComponent();
panel1.BorderStyle = BorderStyle.FixedSingle;
buffer = new Bitmap(panel1.Width,panel1.Height);
//Make sure you resize your buffer whenever the panel1 resizes.
}
private void button1_Click(object sender, EventArgs e)
{
using (Graphics g = Graphics.FromImage(buffer))
{
g.DrawRectangle(Pens.Red, 100, 100,100,100);
}
panel1.BackgroundImage = buffer;
}
같은 문제()
mainp이었다 내 패널의 중요 코드 내 모든 그래픽 그리기
- 1. 콘솔 응용 프로그램을 최소화하면 성능에 영향을 줍니까?
- 2. 내 응용 프로그램을 제외하고 모두 음소거
- 3. MONO Cairo 도면의 최소화 또는 크기 조정시 도면이 사라짐
- 4. 시스템 트레이로 최소화하면
- 5. 내 응용 프로그램에서 모두 구성해야합니까?
- 6. 검은 색 사각형을 나타내는 도면이
- 7. Jquery에서 여러 이미지 요소가 모두 표시되면 사라집니다.
- 8. 일단 응용 프로그램을 종료하면 생성 된 QR 이미지가 사라집니다
- 9. iPhone에서 내 응용 프로그램 내 iTunes에서 내 응용 프로그램을 평가하십시오.
- 10. 내 응용 프로그램을 공유하고 누구는
- 11. 내 안드로이드 응용 프로그램을 최적화하려고합니다.
- 12. UILabels가 내 응용 프로그램을 충돌합니다.
- 13. Google지도는 내 응용 프로그램을 실행하려고
- 14. UIImagePickerController 내 응용 프로그램을 중단시킵니다!
- 15. 내 응용 프로그램을 다국어로 만들기
- 16. 내 응용 프로그램을 종료 하시겠습니까?
- 17. 내 응용 프로그램을 실행할 때 내 애플
- 18. 내 응용 프로그램을 내 페이지에 어떻게 추가합니까?
- 19. ShowInTaskbar = true 내 양식이 사라집니다.
- 20. 응용 프로그램 내 응용 프로그램을 시작하는 방법
- 21. 내 응용 프로그램이 다른 응용 프로그램을 바꾸려고합니다.
- 22. 내 응용 프로그램 만 응용 프로그램을 실행하게하십시오.
- 23. 내 응용 프로그램을 통해 다른 응용 프로그램을 열 수 없음
- 24. 내 응용 프로그램 요청을 모두 검색하려면 어떻게합니까?
- 25. myfan 페이지에 내 응용 프로그램을 설치하는 방법
- 26. 응용 프로그램에서 백그라운드로 응용 프로그램이 사라집니다.
- 27. linq 쿼리 내 wpf 응용 프로그램을 닫습니다
- 28. 내 URL을 열면 내 응용 프로그램이 시장 응용 프로그램을 사용하도록하십시오.
- 29. 나중에 프로그램을 실행 한 후 메뉴가 사라집니다.
- 30. 내 C++ 응용 프로그램을 게시하는 방법?
보기 : http://bobpowell.net/picturebox.htm –