다음을 통해 공유


방법: 런타임에 그림의 크기 또는 위치 수정(Windows Forms)

양식에서 Windows Forms PictureBox 컨트롤을 사용하는 경우 양식의 SizeMode 속성을 다음으로 설정할 수 있습니다.

  • 그림의 왼쪽 위 모서리를 컨트롤의 왼쪽 위 모서리에 맞춥니다.

  • 컨트롤 내에서 그림을 가운데 맞춤합니다.

  • 표시되는 그림에 맞게 컨트롤 크기를 조정합니다.

  • 컨트롤에 맞게 표시할 그림을 늘입니다.

그림(특히 비트맵 형식의 그림)을 늘이면 이미지 품질이 떨어질 수 있습니다. 런타임에 이미지를 그리기 위한 그래픽 명령 목록인 메타파일은 비트맵보다 늘이기에 더 적합합니다.

런타임에 SizeMode 속성을 설정하려면

  1. SizeModeNormal(기본값), AutoSize, CenterImage 또는 StretchImage로 설정합니다. Normal은 이미지가 컨트롤의 왼쪽 위 모서리에 배치됨을 의미합니다. 이미지가 컨트롤보다 크면 아래쪽 및 오른쪽 가장자리가 잘립니다. CenterImage는 이미지가 컨트롤 내에서 가운데에 배치됨을 의미합니다. 이미지가 컨트롤보다 크면 그림의 바깥쪽 가장자리가 잘립니다. AutoSize는 컨트롤의 크기가 이미지 크기에 맞게 조정됨을 의미합니다. StretchImage는 반대이며 이미지의 크기가 컨트롤의 크기에 맞게 조정됨을 의미합니다.

    아래 예제에서 이미지의 위치에 설정된 경로는 내 문서 폴더입니다. Windows 운영 체제를 실행하는 대부분 컴퓨터가 이 디렉터리에 포함된다고 가정할 수 있기 때문에 그렇습니다. 또한 최소한의 시스템 액세스 수준을 가진 사용자가 안전하게 애플리케이션을 실행할 수 있습니다. 아래 예제에서는 PictureBox 컨트롤이 이미 추가된 양식을 가정합니다.

    Private Sub StretchPic()  
       ' Stretch the picture to fit the control.  
       PictureBox1.SizeMode = PictureBoxSizeMode.StretchImage  
       ' Load the picture into the control.  
       ' 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 StretchPic(){  
       // Stretch the picture to fit the control.  
       PictureBox1.SizeMode = PictureBoxSizeMode.StretchImage;  
       // Load the picture into the control.  
       // 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 StretchPic()  
       {  
          // Stretch the picture to fit the control.  
          pictureBox1->SizeMode = PictureBoxSizeMode::StretchImage;  
          // Load the picture into the control.  
          // 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"));  
       }  
    

참고 항목