`
huobengle
  • 浏览: 862144 次
文章分类
社区版块
存档分类
最新评论

遍历屏幕设置的选项

 
阅读更多
using System.Runtime.InteropServices;
[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;
}
[DllImport("user32.dll")]
public static extern bool EnumDisplaySettings(string lpszDeviceName,
int iModeNum, ref DEVMODE lpDevMode);
private void button1_Click(object sender, EventArgs e)
{
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++;
}
}
分享到:
评论

相关推荐

    Tables-app:时间表表格应用代码

    应该有一个选项来设置计时器,选择要测试的数字,并查看最后的效果如何。 屏幕上应显示时间表问题以询问其他人,以及答案和选择该人是对还是错的选项。 已完成:大约07/2020 这是在Android Studio中开发的android...

    ux-portfolio-kkstauble:ux-portfolio-kkstauble由GitHub Classroom创建

    在这台特定的电视上,一旦在屏幕键盘上选择了一个字母,就会出现一个带有一些选项的小菜单:一个确认字母的复选标记,一个删除字母的按钮以及一些其他可以猜测的字母选项您接下来可能需要选择哪封信才能节省导航...

    Playlist

    较长的文本和图像系列设置为用于循环遍历的字符串数组。 函数drawStarBackground()使用frameRate(5)将页面背景中的星星随机化。 drawTitle()函数遍历title []字符串,并将单词在屏幕上的位置随机化。 ...

    精通Windows.API-函数、接口、编程实例.pdf

    3.5.5 选项与设置 65 3.6 开发环境配置总结 66 第4章 文件系统 67 4.1 概述 67 4.1.1 文件系统的基本概念 67 4.1.2 文件系统主要API 68 4.2 磁盘和驱动器管理 70 4.2.1 遍历卷并获取属性 70 4.2.2 ...

    精通WindowsAPI 函数 接口 编程实例

    3.5.5 选项与设置 65 3.6 开发环境配置总结 66 第4章 文件系统 67 4.1 概述 67 4.1.1 文件系统的基本概念 67 4.1.2 文件系统主要API 68 4.2 磁盘和驱动器管理 70 4.2.1 遍历卷并获取属性 70 4.2.2...

    MiaProva-crx插件

    “活动”选项卡:在这里Adobe Target用户可以轻松地查看他们遍历其数字属性时所参加的活动和体验。 他们还可以查看将哪些其他活动映射到其Adobe Target ID-非常有用,有助于了解交叉测试的参与。 目标用户还将看到...

    三明治:Wawa HCL Hackathon 2019:SANDWICH ORDER

    三明治订单 ... 信息亭运行带有触摸屏的简单浏览器,设计屏幕界面,可以轻松遍历适用于不同三明治类型的兼容三明治选项。 设计一种机制,使客户能够在自助服务终端和智能手机(或任何未来的订购渠道)上快速

    C#开发实例大全(基础卷).软件开发技术联盟(带详细书签) PDF 下载

    实例228 设置ComboBox控件的默认选项为 第一项 302 实例229 将数据表中的字段添加到ComboBox 控件中 303 实例230 在ComboBox下拉列表中显示图片 304 实例231 用ComboBox控件制作浏览器 网址输入框 305 实例232...

    delphi 开发经验技巧宝典源码

    第1章 开发环境 1 1.1 环境设置 2 0001 如何定制工具栏 2 ...0296 如何在屏幕最前面显示滚动字幕 192 0297 制作磁性窗体 193 0298 制作浮动窗口 194 0299 制作另类提示窗口 195 0300 将窗体...

    delphi 开发经验技巧宝典源码06

    第1章 开发环境 1 1.1 环境设置 2 0001 如何定制工具栏 2 ...0296 如何在屏幕最前面显示滚动字幕 192 0297 制作磁性窗体 193 0298 制作浮动窗口 194 0299 制作另类提示窗口 195 0300 将窗体...

Global site tag (gtag.js) - Google Analytics