C# 代码调整屏幕分辨率
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
namespace 解决分辨率
{
public partial class Form1 : Form
{
//保存当前屏幕分辨率
int i = Screen.PrimaryScreen.Bounds.Width;
int j = Screen.PrimaryScreen.Bounds.Height;
public Form1()
{
InitializeComponent();
}
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)]
public 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;
public short dmOrientation;
public short dmPaperSize;
public short dmPaperLength;
public short dmPaperWidth;
public short dmScale;
public short dmCopies;
public short dmDefaultSource;
public short dmPrintQuality;
public short dmColor;
public short dmDuplex;
public short dmYResolution;
public short dmTTOption;
public 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;
}
[DllImport("user32.dll", CharSet = CharSet.Auto)]
static extern int ChangeDisplaySettings([In] ref DEVMODE lpDevMode, int dwFlags);
[DllImport("user32.dll", CharSet = CharSet.Auto)]
static extern bool EnumDisplaySettings(string lpszDeviceName, Int32 iModeNum, ref DEVMODE lpDevMode);
void ChangeRes()
{
DEVMODE DevM = new 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;//颜色象素
long result = ChangeDisplaySettings(ref DevM, 0);
}
void FuYuan()
{
DEVMODE DevM = new DEVMODE();
DevM.dmSize = (short)Marshal.SizeOf(typeof(DEVMODE));
bool mybool;
mybool = EnumDisplaySettings(null, 0, ref DevM);
DevM.dmPelsWidth = i;//恢复宽
DevM.dmPelsHeight =j;//恢复高
DevM.dmDisplayFrequency = 60;//刷新频率
DevM.dmBitsPerPel = 32;//颜色象素
long result = ChangeDisplaySettings(ref DevM, 0);
}
private void Form1_Load(object sender, EventArgs e)
{
ChangeRes();
}
private void button1_Click(object sender, EventArgs e)
{
FuYuan();
this.Close();
}
转载于:https://blog.51cto.com/317057112/1859438
C# 代码调整屏幕分辨率相关推荐
- python获得屏幕分辨率多少合适_python调win32api调整屏幕分辨率
在windows下想要通过python写的程序,需要调用到调整屏幕分辨率.在网上查到,需要用windows的api,ChangeDisplaySettings .在python下使用,需要先安装 py ...
- Ubuntu18.04调整屏幕分辨率至1920*1080
Ubuntu18.04调整屏幕分辨率至1920*1080 文章目录 Ubuntu18.04调整屏幕分辨率至1920*1080 前言: 参考链接: 详细步骤: 前言: 当服务器插上了小分辨率的显示器之后 ...
- Virtualbox安装Kylin 10后调整屏幕分辨率无法选中保存按钮
Virtualbox安装Kylin 10后调整屏幕分辨率无法选中保存按钮 Fred.li 2022-10-29 Virtualbox虚拟机安装Kylin 10后默认分辨率非800*600,使用起来极为 ...
- Ubuntu16.04如何调整屏幕分辨率至1920*1080
1 引言 ubuntu16.04桌面版安装好后,发现屏幕分辨率调整选项里没有1920x1080这一选项,经过一番研究,可通过如下方式进行屏幕分辨率设置,以下操作均在ubuntu16.04桌面版操作.不 ...
- Ubuntu16.04调整屏幕分辨率至1920*1080
安装好ubuntu 16.04桌面版后,发现屏幕分辨率调整选项里没有1920*1080这一选项,经过一番查找,可通过如下方式进行屏幕分辨率设置.以下操作均在ubuntu 16.04桌面版操作,不要用远 ...
- ubuntu16.04调整屏幕分辨率
在虚拟机VMware中安装完Ubuntu系统后,发现屏幕只占据了很小的一个矩形位置,可以通过下面的操作设置合适的屏幕分辨率: 1.点击"系统设置" 2. 选择"Displ ...
- Linux下调整屏幕分辨率
使用的命令:xrandr cvt (如果没有则通过相应的安装命令去安装) 查看当前屏幕分辨率列表 xrandr 设置屏幕分辨率 xrandr -s 1920x1080_60.00 ( ...
- Centos7 GNOME Desktop桌面版-调整屏幕分辨率
调整屏蔽分辨率Applications->System Tools->Settings->Devices->Displays,调整Resolution即可,具体可见截图.
- 台式电脑怎么调分辨率_电脑怎样调整屏幕分辨率大小
在使用电脑时,一些用户可能会碰到电脑屏幕分辨率不正常的情况,那么电脑屏幕分辨率怎么调呢?接下来就让我们一起来了解下吧. 先来了解下笔记本各个尺寸所对应的分辨率: 12.1寸 1280*800 13.3 ...
最新文章
- ubuntu部署eclipse兼容性问题
- MySQL的GROUP_CONCAT函数
- java原子操作cas_java并发编程系列二:原子操作/CAS
- 2010-04-25 搞定aftr
- 【Qt开发】Qt标准对话框之QMessageBox
- asp.net mvc View视图目录修改
- sql编程接收一个集合_T-SQL中基于集合的程序编程方法简介
- python转置列表代码_转置字典(从字典列表中提取一个键的所有值)
- 网站安全之为Web项目添加验证码功能(二)
- windows电脑连接公共wifi登陆界面无法弹出怎么办?
- VOT Toolkit工具配置和使用--Python版本
- Visual C++ 2008入门经典 Ivor Horton(书_在线阅读)
- 第二十五期 总结《路由器就是开发板》
- 搭建图片网站:通过cpolar发布图片网站 3/3
- Excel 表格实现多列排序
- AutoCAD命令大全
- DPU — Overview
- 有哪些原因会导致Facebook账号会被立刻封禁
- windows10神州网信政府版“麦克风”权限如何打开?
- MySQL数据库入门超级详细教程