.NET 2.x Как получить список разрешений экрана? - C#
Формулировка задачи:
Как узнать список разрешений, которые поддерживает монитор? Типа как здесь.
Решение задачи: «.NET 2.x Как получить список разрешений экрана?»
textual
Листинг программы
- using System;
- using System.Linq;
- using System.Runtime.InteropServices;
- using System.Windows.Forms;
- namespace ListResolutions
- { class Program
- {
- [DllImport("user32.dll")]
- public static extern bool EnumDisplaySettings( string deviceName, int modeNum, ref DEVMODE devMode);
- const int ENUM_CURRENT_SETTINGS = -1;
- const int ENUM_REGISTRY_SETTINGS = -2;
- [StructLayout(LayoutKind.Sequential)]
- public struct DEVMODE { private const int CCHDEVICENAME = 0x20; private const int CCHFORMNAME = 0x20; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 0x20)]
- public string dmDeviceName;
- public short dmSpecVersion;
- public short dmDriverVersion;
- public short dmSize;
- public short dmDriverExtra; public int dmFields; public int dmPositionX; public int dmPositionY; public ScreenOrientation dmDisplayOrientation; public int dmDisplayFixedOutput; public short dmColor; public short dmDuplex; public short dmYResolution; public short dmTTOption; public short dmCollate; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 0x20)] public string dmFormName; public short dmLogPixels; public int dmBitsPerPel; public int dmPelsWidth; public int dmPelsHeight; public int dmDisplayFlags; public int dmDisplayFrequency; public int dmICMMethod; public int dmICMIntent; public int dmMediaType; public int dmDitherType; public int dmReserved1; public int dmReserved2; public int dmPanningWidth; public int dmPanningHeight; } static void Main(string[] args) { DEVMODE vDevMode = new DEVMODE(); int i = 0; while (EnumDisplaySettings(null, i, ref vDevMode)) { Console.WriteLine("Width:{0} Height:{1} Color:{2} Frequency:{3}", vDevMode.dmPelsWidth, vDevMode.dmPelsHeight, 1 << vDevMode.dmBitsPerPel, vDevMode.dmDisplayFrequency ); i++; } } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д