방법: 런타임에 그림 설정(Windows Forms)
업데이트: 2007년 11월
Windows Forms PictureBox 컨트롤에서 표시하는 이미지를 프로그래밍 방식으로 설정할 수 있습니다.
프로그래밍 방식으로 그림을 설정하려면
Image 클래스의 FromFile 메서드를 사용하여 Image 속성을 설정합니다.
아래 예제에서는 내 문서 폴더가 이미지의 위치로 설정되었습니다. Windows 운영 체제가 실행되는 대부분의 컴퓨터에는 내 문서 폴더가 포함되어 있으므로 이 위치를 사용합니다. 또한 이 위치를 선택하면 사용자는 최소한의 시스템 액세스 수준을 갖고 응용 프로그램을 안전하게 실행할 수 있습니다. 아래 예제에서는 PictureBox 컨트롤을 포함하는 폼을 이미 추가한 것으로 가정합니다.
Private Sub LoadNewPict() ' You should replace the bold image ' in the sample below with an icon of your own choosing. PictureBox1.Image = Image.FromFile _ (System.Environment.GetFolderPath _ (System.Environment.SpecialFolder.Personal) _ & "\Image.gif") End Sub
private void LoadNewPict(){ // You should replace the bold image // in the sample below with an icon of your own choosing. // Note the escape character used (@) when specifying the path. pictureBox1.Image = Image.FromFile (System.Environment.GetFolderPath (System.Environment.SpecialFolder.Personal) + @"\Image.gif"); }
private void LoadNewPict(){ // You should replace the bold image // in the sample below with an icon of your own choosing. pictureBox1.get_Image().FromFile (System.Environment.GetFolderPath (System.Environment.SpecialFolder.Personal) + "\\Image.gif");
private: void LoadNewPict() { // You should replace the bold image // in the sample below with an icon of your own choosing. pictureBox1->Image = Image::FromFile(String::Concat( System::Environment::GetFolderPath( System::Environment::SpecialFolder::Personal), "\\Image.gif")); }
그래픽을 지우려면
먼저 이미지에 사용되는 메모리를 해제한 다음 그래픽을 지웁니다. 나중에 메모리를 관리하는 데 문제가 생기면 가비지 수집을 통해 메모리가 확보됩니다.
If Not (PictureBox1.Image Is Nothing) Then PictureBox1.Image.Dispose() PictureBox1.Image = Nothing End If
if (pictureBox1.Image != null) { pictureBox1.Image.Dispose(); pictureBox1.Image = null; }
if (pictureBox1->Image != nullptr) { pictureBox1->Image->Dispose(); pictureBox1->Image = nullptr; }
참고: 이런 방법으로 Dispose 메서드를 사용해야 하는 이유에 대한 자세한 내용은 관리되지 않는 리소스 정리를 참조하십시오.
이 코드는 디자인 타임에 그래픽을 컨트롤에 로드했더라도 이미지를 지웁니다.
참고 항목
작업
방법: 디자이너를 사용하여 그림 로드(Windows Forms)
방법: 런타임에 그림의 크기 또는 위치 수정(Windows Forms)
참조
PictureBox 컨트롤 개요(Windows Forms)