C#中改变显示器的分辨率
2013-06-07 17:34 观海看云 阅读(691) 评论(0) 编辑 收藏 举报using System; using System.Drawing; using System.Collections; using System.ComponentModel; using System.Windows.Forms; using System.Data; using System.Runtime.InteropServices; namespace ScreenResolution { public class Form1 : System.Windows.Forms.Form { public enum DMDO { DEFAULT = 0, D90 = 1, D180 = 2, D270 = 3 } [StructLayout(LayoutKind.Sequential, CharSet=CharSet.Auto)] struct DEVMODE { public const int DM_DISPLAYFREQUENCY = 0x400000; public const int DM_PELSWIDTH = 0x80000; public const int DM_PELSHEIGHT = 0x100000; private const int CCHDEVICENAME = 32; private const int CCHFORMNAME = 32; [MarshalAs(UnmanagedType.ByValTStr, SizeConst=CCHDEVICENAME)] 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 DMDO dmDisplayOrientation; public int dmDisplayFixedOutput; public short dmColor; public short dmDuplex; public short dmYResolution; public short dmTTOption; public short dmCollate; [MarshalAs(UnmanagedType.ByValTStr, SizeConst=CCHFORMNAME)] 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", CharSet=CharSet.Auto)] //static extern int ChangeDisplaySettings( DEVMODE lpDevMode, int dwFlags); static extern int ChangeDisplaySettings( [In] ref DEVMODE lpDevMode, int dwFlags); private System.ComponentModel.Container components = null; public Form1() { InitializeComponent(); } protected override void Dispose( bool disposing ) { if( disposing ) { if (components != null) { components.Dispose(); } } base.Dispose( disposing ); } #region Windows Form Designer generated code private void InitializeComponent() { this.AutoScaleBaseSize = new System.Drawing.Size(6, 14); this.ClientSize = new System.Drawing.Size(292, 273); this.Text = "改变屏幕分辨率的例子"; } #endregion static void Main() { Form1 r = new Form1(); r.ChangeRes(); Application.Run(new Form1()); } void ChangeRes() { Form1 t = new Form1(); long RetVal=0; DEVMODE dm = new DEVMODE(); dm.dmSize= (short)Marshal.SizeOf(typeof(DEVMODE)); dm.dmPelsWidth = 1024; dm.dmPelsHeight= 768; dm.dmDisplayFrequency=85; dm.dmFields = DEVMODE.DM_PELSWIDTH | DEVMODE.DM_PELSHEIGHT | DEVMODE.DM_DISPLAYFREQUENCY; RetVal = ChangeDisplaySettings(ref dm, 0); } } }
-
C1Flexgrid不暴露任何直接的方法导出到Excel,但是你可以很容易实现的功能,使用辅助类提供了'ExcelGrid'(Silverlight)中样品,你可以只到您的项目中添加这些辅助类和使用类的方法来导出一个excel文件中的数据。C1FlexgridToExcel... 阅读全文>>
-
c1FlexGrid1.SaveGrid(@"c:\TEST.XLS", FileFormatEnum.Excel, FileFlags.IncludeFixedCells,Encoding.Default);第一个参数: 导出的目标文件路径,没有会创建.存在会覆盖.第二个能... 阅读全文>>
-
WebRequest类是.NET Framework中“请求/响应”模型的abstract基类,用于访问Internet数据。使用WebRequest类请求/响应模型的应用程序可以用协议不可知的方式从Internet请求数据,在这种方式下,应用程序处理WebRequest类的实例... 阅读全文>>
-
WebClient类位于System.Net命名空间下,WebClient类提供向URI标识的任何本地、Intranet或Internet资源发送数据以及从这些资源接收数据的公共方法。源代码///引用命名空间 using System.IO; using S... 阅读全文>>
-
C# SQLiteHelp类
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.IO; using System.Data; using System.Dat... 阅读全文>> -
SQL Server 2008中使用DataTable作为存储过程的参数的相关知识是本文我们主要要介绍的内容,笔者在最近工作中写了几个存储过程,需要向存储过程中传递字符串,因为SQL Server 2000中没有内置类似于split 的函数,只好自己处理,将前台数据集中的一列用逗... 阅读全文>>
-
C#小写数字金额转换成大写人民币金额的算法
C#小写数字金额转换成大写人民币金额的算法第一种方法: using System.Text.RegularExpressions;//首先引入命名空间 private string DaXie(string money) { ... 阅读全文>> -
1. 先变量后构造函数。变量先被初始化,然后构造函数被执行2. 先静态化后实例化。当一个类被访问时,静态变量和构造函数最先被初始化.接着是对象的实例化变量和构造函数被初始化3. 先派生类后基类。对于变量和静态构造函数,派生对象在基对象之前被初始化.... 阅读全文>>
-
C#中的静态与非静态
静态类 vs 普通类静态类与普通类的区别有以下几点:1)静态类无法实例化而普通类可以;2)静态类只能从System.Object基类继承;普通可以继承其它任何非static和非sealed类,但也只能继承一个类;3)静态类不能继承接口;普通类可以继承多个接口;4)静态类... 阅读全文>> -
C# 杀死自已,退出子线程?
托管线程或者是后台线程,或者是前台线程。后台线程不会使托管执行环境处于活动状态,除此之外,后台线程与前台线程是一样的。一旦所有前台线程在托管进程 (其中 .exe 文件是托管程序集)中被停止,系统将停止所有后台线程并关闭。通过设置 Thread.IsBackground 属性,可... 阅读全文>>
作者:观海看云(个人开发历程知识库 - 博客园)
出处:http://www.cnblogs.com/zhangtao/
文章版权归本人所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
出处:http://www.cnblogs.com/zhangtao/
文章版权归本人所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。