2014年2月6日 星期四

[C#/winform] 不同解析度調整視窗大小

利用DPI取得螢幕解析度比例,進而改變WinForm的大小

如上,DPI可能為
DPI大小百分比
96100%
120125%
144150%

廢話不多說

// 找出字體大小,並算出比例
float dpiX, dpiY;
Graphics graphics = this.CreateGraphics();
dpiX = graphics.DpiX;
dpiY = graphics.DpiY;
int intPercent = (dpiX == 96) ? 100 : (dpiX == 120) ? 125 : 150;

// 針對字體變更Form的大小
this.Height = this.Height * intPercent / 100;
this.Width = this.Width * intPercent / 100;


end.

沒有留言:

張貼留言