>  기사  >  类库下载  >  화면 해상도를 조정하는 C# 코드

화면 해상도를 조정하는 C# 코드

高洛峰
高洛峰원래의
2016-10-13 16:27:282322검색

System 사용;
System.Collections.Generic 사용;
System.ComponentModel 사용;
System.Data 사용;
System.드로잉 사용;
System.Linq 사용;
System.Text 사용;
System.Windows.Forms 사용;
System.Runtime.InteropServices 사용;
네임스페이스 解决分辨率
{
    공개 부분 클래스 Form1 : Form
    { // 🎜 当前 当前 屏幕 屏幕 屏幕 int i = screen.primaryscreen.bounds.width; public form1 ()             초기화컴포넌트();
        }
        [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)]
        공개 구조체 DEVMODE
        {
            [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 32 )]
            공개 문자열 dmDeviceName;
            공개 단축 dmSpecVersion;
            공개 단축 dmDriverVersion;
           공개 단축 dmSize;
            공개 short dmDriverExtra;
            public int dmFields;
            public short dmOrientation ;
            공개 단축 dmPaperSize;
            공개 단축 dmPaperLength;
            공개 단축 dmPaperWidth;
           공개 단축 dmScale;
           공개 짧은 dmCopies;
            공개 짧은 dmDefaultSource;
            공개 짧은 dmPrintQuality;
            공개 단축 dmColor;
            공개 단축 dmDuplex;
            공개 단축 dmYResolution;
            공개 단축 dmTTOption;
            공개 단축 dmCollate;
            [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 32)] > public int dmPelsHeight;
            public int dmDisplayFlags;
            public int dmDisplayFrequency;
        }
        [DllImport("user32.dll", CharSet = CharSet.Auto)]
        static extern int ChangeDisplaySettings([In] ref DEVMODE lpDevMode, int dwFlags);
        [DllImport("user3 2. dll", CharSet = CharSet.Auto)]
        static extern bool EnumDisplaySettings(string lpszDeviceName, Int32 iModeNum, ref DEVMODE lpDevMode);
        void ChangeRes()
        {

            DEVMODE DevM = 신규 DEVMODE();
            DevM.dmSize = (short)Marshal.SizeOf(typeof(DEVMODE));
            bool mybool;
           mybool = EnumDisplaySettings(null, 0, ref DevM);
DevM.dmPelsWidth = 1024; // 너비
DevM.dmPelsHeight = 768; // 높음
DevM.dmDisplayFrequency = 60; // 새로 고침 빈도
DevM.dmBitsPerPel = 32 ;//색상 픽셀
긴 결과 = ChangeDisplaySettings(ref DevM, 0);
}
void FuYuan()
{
DEVMODE DevM = new DEVMODE();
DevM.dmSize = (short)Marshal. (typeof(DEVMODE));
bool mybool;
mybool = EnumDisplaySettings(null, 0, ref DevM); DevM.dmPelsHeight =j ; // 높은 값 복원 DEVM.DMDISPLAYFREQUENCY = 60; 주파수
DEVM.DMBITSPER = 32; // 컬러 픽셀
Long Result = CHANGEDISTITNGS(Ref DEVM, 0 );
}
private void Form1_Load(object sender, EventArgs e)
{
ChangeRes();
}

private void 버튼1_Click(객체 전송자, EventArgs e)
         {
FuYuan();
this.Close();

}

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.