C#获取屏幕的分辨率、工作区分辨率

运行结果如下;

由于屏幕的任务栏在侧面所以屏幕宽度变化。

代码如下

cs 复制代码
private void Form1_Load(object sender, EventArgs e)
        {
            int SH = Screen.PrimaryScreen.Bounds.Height; //1080
            int SW = Screen.PrimaryScreen.Bounds.Width; //1920

            System.Drawing.Rectangle rec = Screen.GetWorkingArea(this);
            int SH2 = rec.Height;
            int SW2 = rec.Width;
            //在运行之后,发现与设置屏幕分辨率不一样。
            //经发现,在使用Rectangle获取屏幕分辨率会除去任务栏的高度或者宽度。
            richTextBox1.AppendText($"屏幕分辨率{SH}  {SW}");
            richTextBox1.AppendText($"\r\n");
            richTextBox1.AppendText($"工作区分辨率{SH2}  {SW2}");

        }

特此记录

anlog

2023年9月11日

相关推荐
不正经学生3 小时前
C语言预处理详解:编译器真正动手之前的那些事
c语言·开发语言·算法·面试·bug
门思科技4 小时前
LoRaWAN 设备类别:Class A、B、C 对比与选型指南
c语言·开发语言·php
恋恋西风6 小时前
C++ 理解 std::thread 在单核和多核上的行为差异
开发语言·c++
Brilliantwxx6 小时前
【Linux】 进程(9)程序与进程地址空间(基础+进阶+面试题)
linux·运维·服务器·开发语言·c++
BizzZ_7 小时前
C++(22)——类型转换和IO流
开发语言·c++
小范同学_7 小时前
JDK1.7 与 JDK1.8 HashMap 底层原理对比 + 数组并发扩容死循环详解
java·开发语言
geovindu8 小时前
CSharp: 万年历
开发语言·后端·c#·.net
我找到地球的支点啦8 小时前
Matlab系列(009) 一CRC循环冗余校验详解
开发语言·数据结构·算法·matlab·信息与通信
予昊8 小时前
从零实现“在线五子棋对战“:WebSocket 实时通信 + 段位匹配
java·开发语言·网络·websocket
weixin_461408588 小时前
Mybatis-flex小记
java·开发语言·mybatis