좋아요, 나는 어떤 설정으로 인해 다른 크기로 표시되는 버튼이 있습니다.WinForms : 이미지를 그릴 수있는 버튼의 영역
이제 단추에 이미지를 표시하려고합니다. 어떻게 그릴 수있는 사각형을 얻을 수 있습니까?
button.DisplayRectangle
또는 button.ClientRectangle
을 쿼리하면 반환되는 버튼의 정확한 크기가 표시됩니다. 그러나 버튼에 테두리가있는 것처럼 그리지 못해서 이것은 잘못되었습니다.
문서에서 알 수 있듯이 DisplayRectangle
은 테두리 및 여백 같은 것들을 제외하고 내가 그릴 수있는 사각형 만 반환해야합니까?
내가 원하는 것을 얻을 수있는 방법이 있습니까?
업데이트 : 더글라스 Barbin의 대답은 그가에서 실제로 Border3DSize
속성이 SystemInformation
클래스를보고 나를 데리고
. 내 디스플레이에
Dim size = New Size(ctrl.Width - SystemInformation.Border3DSize.Width * 2, _
ctrl.Height - SystemInformation.Border3DSize.Height * 2)
을 계산하는 경우
는하지만 여전히, 아직도 실제로 완전히 이미지에 맞게없는 픽셀 일부 (정확히 두)가있다.
이것은 좋은 생각입니다. 불행히도 3D 테두리 모양에이 기능이 필요합니다. –