현재 위치 - 중국 분류 정보 발표 플랫폼 - 비즈니스 서비스 정보 - 컨트롤의 모양을 다시 그리는 방법에 대한 C# winForm

컨트롤의 모양을 다시 그리는 방법에 대한 C# winForm

폼의 FormBorderStyle을 None으로 설정하고 최소화 및 닫기 버튼을 드래그한 후 다음과 비슷하게 gdi+를 자세히 보면 변경 사항이 적용됩니다.

< p> public void Render(그래픽 그래픽)

{

펜 펜;

브러시 브러시;

int x, y;< /p>

int textWidth, textHeight;

Brush = new SolidBrush(IsSelectedValue?

CaptionColor : Color.White);

pen = 새 펜 (색상. 검정색);

graphic.FillEllipse(brush, PositionLeftX, PositionTopY,

SizeWidth, SizeHeight);

graphic.DrawEllipse(pen, PositionLeftX, PositionTopY,< /p>

SizeWidth, SizeHeight);

textWidth = (int)graphics.MeasureString(CaptionName,

CaptionFont).Width;

textHeight = (int)graphics.MeasureString(CaptionName,

CaptionFont).Height;

x = PositionLeftX + (SizeWidth - textWidth) / 2;

y = PositionTopY + (SizeHeight - textHeight) / 2;

graphic.DrawString(CaptionName, CaptionFont,

new SolidBrush(IsSelectedValue ? Color.White : CaptionColor),

x, y);

brush.Dispose();

}