/// <summary>
/// 获取系统所有屏幕的总分辨率
/// </summary>
/// <returns>多个屏幕分辨率总和</returns>
public static Rectangle GetHostScreenBounds()
{
int minX = 0;
int minY =0;
int maxX=0;
int maxY = 0;
foreach (Screen screen in Screen.AllScreens)
{
if (screen != null)
{
Rectangle rectangle = screen.Bounds;
minX = rectangle.X < minX ? rectangle.X : minX;
minY = rectangle.X < minY ? rectangle.X : minY;
maxX = rectangle.X + rectangle.Width > maxX ? rectangle.X + rectangle.Width : maxX;
maxY = rectangle.Y + rectangle.Height > maxY ? rectangle.Y + rectangle.Height : maxY;
}
}
return new Rectangle(minX, minY , maxX - minX, maxY -minY);
}
1. Comprémoslo primero y luego expliquemos el principio.
Primero, obtenga el tamaño de resolución del borde de cada pantalla en el sistema para determinarlo y obtenga el tamaño de la pantalla obteniendo el borde grande menos el borde mínimo.