c# 屏幕旋转控制

时间:2014-10-16 09:09:13
【文件属性】:
文件名称:c# 屏幕旋转控制
文件大小:28KB
文件格式:RAR
更新时间:2014-10-16 09:09:13
c# vs2005 wince 屏幕 旋转 屏幕翻转源码。 源码与2011年09月01日编写。用VS2005编写,运行硬件环境为TE2440 6410 系统环境为WINCE 5.0 6.0嵌入式实测无问题。 [DllImport("coredll.dll")] static extern int ChangeDisplaySettingsEx(string lpszDeviceName, ref DEVMODE lpDevMode, IntPtr hwnd, int dwflags, IntPtr lParam); [StructLayout(LayoutKind.Sequential)] private struct DEVMODE { [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 32)] public string dmDeviceName; public short dmSpecVersion; public short dmDriverVersion; public short dmSize; public short dmDriverExtra; public int dmFields; short dmOrientation; short dmPaperSize; short dmPaperLength; short dmPaperWidth; short dmScale; short dmCopies; short dmDefaultSource; short dmPrintQuality; short dmColor; short dmDuplex; short dmYResolution; short dmTTOption; short dmCollate; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 32)] public string dmFormName; public short dmLogPixels; public int dmBitsPerPel; public int dmPelsWidth; public int dmPelsHeight; public int dmDisplayFlags; public int dmDisplayFrequency; public int dmDisplayOrientation; } public static void SetScreenRotation(int modes) { DEVMODE devmode = new DEVMODE(); devmode.dmSize = (short)Marshal.SizeOf(typeof(DEVMODE)); devmode.dmFields = 0x00800000; devmode.dmDisplayOrientation = modes; ChangeDisplaySettingsEx(null, ref devmode, IntPtr.Zero, 0, IntPtr.Zero); }
【文件预览】:
ScreenDemo
----ScreenDemo.suo(14KB)
----ScreenDemo.sln(1KB)
----ScreenDemo()
--------bin()
--------Form1.Designer.cs(4KB)
--------ScreenRotation.cs(3KB)
--------ScreenDemo.csproj(4KB)
--------Program.cs(355B)
--------obj()
--------Form1.cs(890B)
--------Form1.resx(6KB)
--------Properties()
--------ScreenDemo.csproj.user(234B)

网友评论

  • 资源亲测可用,谢谢分享
  • 运行不起来,参考看看而已
  • 非常感谢分享,思路还是有参考价值
  • 具有一定的参考价值,非常感谢无私的分享
  • 运行去起来,仅仅参考看看而已
  • 正好用上了,帮上大忙,哈哈哈哈
  • 不能改分辨率,也不能旋转。10分真不便宜。
  • 很好用的代码。
  • 不能运行 ,说什么版本不对, 不过看看源代码还是有帮助的
  • win7上运行有些问题,修改以后可以用