所属类别:移动开发
文章作者:佚名
特别推荐:免费发布信息 承包关键词~~抢爆了!HOT!
在 C# 中旋转屏幕以下 C# 代码将前面讨论的技术结合起来,并展示了如何在托管代码中顺时针旋转屏幕。请注意,这段代码只对支持相应显示设置的设备起作用。
// initialize the DEVMODE structure
DEVMODE dm = new DEVMODE();
dm.dmDeviceName = new string(new char[32]);
dm.dmFormName = new string(new char[32]);
dm.dmSize = Marshal.SizeOf(dm);
if (0 != NativeMethods.EnumDisplaySettings(
null,
NativeMethods.ENUM_CURRENT_SETTINGS,
ref dm))
{
// swap width and height
int temp = dm.dmPelsHeight;
dm.dmPelsHeight = dm.dmPelsWidth;
dm.dmPelsWidth = temp;
// determine new orientation
switch(dm.dmDisplayOrientation)
{
case NativeMethods.DMDO_DEFAULT:
dm.dmDisplayOrientation = NativeMethods.DMDO_270;
break;
case NativeMethods.DMDO_270:
dm.dmDisplayOrientation = NativeMethods.DMDO_180;
break;
case NativeMethods.DMDO_180:
dm.dmDisplayOrientation = NativeMethods.DMDO_90;
break;
case NativeMethods.DMDO_90:
dm.dmDisplayOrientation = NativeMethods.DMDO_DEFAULT;
break;
default:
// unknown orientation value
// add exception handling here
break;
}
int iRet = NativeMethods.ChangeDisplaySettings(ref dm, 0);
if (NativeMethods.DISP_CHANGE_SUCCESSFUL != iRet)
{
// add exception handling here
}
}
小结◆使用 EnumDisplaySettings API 来获取当前显示设置的相关信息。◆使用 EnumDisplaySettings API 来枚举所有受支持的显示设置。◆DEVMODE 结构包含关于给定的显示模式的所有信息。◆使用 ChangeDisplaySettings 来切换到由有效的 DEVMODE 结构指定的新显示模式。◆使用平台调用服务从托管代码实现。关闭本页
相关信息· C
· ASP 3.0中的新特性
· 实例 用JavaScript验证密码强度
· 51CTO独家采访:Cisco数据中心3.0改变了什么?
104555
43267
