本篇文章(MoreWindows)将获取屏幕的物理大小后计算屏幕对角线长度并换算成英寸。这样可以方便大家查看自己电脑屏幕是多少英寸的。为了更方便大家使用,本文将提供电脑屏幕大小查看器下载(配源码)下载地址是(欢迎大家试用): http://download.csdn.net/detail/morewindows/5106270

通常大家在表示电脑、电视、手机等电子产品的屏幕大小时会使用英寸这一长度单位来描述。要注意的一点时,英寸在描述电脑、电视、手机等电子产品的屏幕大小时是指屏幕的对角线长度。

英寸(inch,缩写为in.)在荷兰语中的本意是大拇指,一英寸就是一节大拇指的长度。当然人的大拇指的长度也是长短不一的。14世纪时,英皇爱德华二世颁布了“标准合法英寸”。其规定为:从大麦穗中间选择三粒最大的麦粒并依次排成一行的长度就是一英寸。

英寸与毫米的换算关系为:

1英寸 = 25.4毫米

1毫米 = 0.03937英寸

http://blog.csdn.net/morewindows/article/details/8610891

根据这一换算公式,可以改写下《VC++获取屏幕大小第二篇物理大小GetDeviceCaps 上》中的代码,让其直接计算出屏幕是多少英寸的。改写后的代码如下:

[cpp] view plaincopy print?
  1. // 获取屏幕大小 物理大小
  2. #include <stdio.h>
  3. #include <conio.h>
  4. #include <math.h>
  5. #include <windows.h>
  6. int main()
  7. {
  8. printf("    获取屏幕大小 物理大小\n");
  9. printf(" -- By MoreWindows( http://blog.csdn.net/MoreWindows ) --\n\n");
  10. int nScreenWidth, nScreenHeight;
  11. HDC hdcScreen = GetDC(NULL);   //获取屏幕的HDC
  12. nScreenWidth = GetDeviceCaps(hdcScreen, HORZSIZE);
  13. nScreenHeight = GetDeviceCaps(hdcScreen, VERTSIZE);
  14. printf("屏幕大小(毫米) 宽:%d 高:%d\n", nScreenWidth, nScreenHeight);
  15. printf("    下面将屏幕大小由毫米换算到英寸\n");
  16. const double MILLIMETRE_TO_INCH = 0.03937;
  17. double fDiagonalLen = sqrt(nScreenHeight * nScreenHeight + nScreenWidth * nScreenWidth);
  18. printf("屏幕对角线长为:%.2lf毫米 约 %.2lf英寸\n", fDiagonalLen, fDiagonalLen * MILLIMETRE_TO_INCH);
  19. getch();
  20. return 0;
  21. }
// 获取屏幕大小 物理大小
#include <stdio.h>
#include <conio.h>
#include <math.h>
#include <windows.h>
int main()
{printf("    获取屏幕大小 物理大小\n");        printf(" -- By MoreWindows( http://blog.csdn.net/MoreWindows ) --\n\n");   int nScreenWidth, nScreenHeight;HDC hdcScreen = GetDC(NULL);   //获取屏幕的HDCnScreenWidth = GetDeviceCaps(hdcScreen, HORZSIZE);nScreenHeight = GetDeviceCaps(hdcScreen, VERTSIZE);printf("屏幕大小(毫米) 宽:%d 高:%d\n", nScreenWidth, nScreenHeight);printf("    下面将屏幕大小由毫米换算到英寸\n");const double MILLIMETRE_TO_INCH = 0.03937;double fDiagonalLen = sqrt(nScreenHeight * nScreenHeight + nScreenWidth * nScreenWidth);printf("屏幕对角线长为:%.2lf毫米 约 %.2lf英寸\n", fDiagonalLen, fDiagonalLen * MILLIMETRE_TO_INCH);getch();return 0;
}

运行结果如下:

呵呵,本人笔记本的屏幕大小是13.64英寸即商家所称的14英寸笔记本。

根据这份代码可以发布个小程序,供其它人用来查看电脑屏幕大小。可惜由于GetDeviceCaps函数的限制,在Win7系统下该程序检测结果不准确,WinXP系统下基本上可以正确运行。

电脑屏幕大小查看器的下载地址为(附源码):http://download.csdn.net/detail/morewindows/5106270

转载请标明出处,原文地址:http://blog.csdn.net/morewindows/article/details/8610891

VC++获取屏幕大小第三篇 物理大小GetDeviceCaps 下相关推荐

  1. VC++获取屏幕大小第二篇 物理大小GetDeviceCaps 上

    上一篇< VC++获取屏幕大小第一篇像素大小GetSystemMetrics >中介绍了使用GetSystemMetrics函数来获取屏幕的像素大小,本篇将介绍使用GetDeviceCap ...

  2. VC++获取屏幕大小第一篇 像素大小GetSystemMetrics

    < VC++获取屏幕大小第一篇 像素大小 GetSystemMetrics >和< VC++获取屏幕大小第二篇物理大小GetDeviceCaps 上 >和< VC++获取 ...

  3. VC获取屏幕dpi,win32绘图适配高dpi模式,windows屏幕缩放图像拉伸失真问题

    VC获取屏幕dpi,win32绘图适配高dpi模式 默认MFC支持高dpi模式 通过winapi提供接口获取屏幕dpi 使用==StretchBlt==代替==BitBlt==进行图像绘制 注意==M ...

  4. python网页爬虫循环获取_Python 爬虫第三篇(循环爬取多个网页)

    本篇是 python 爬虫的第三篇,在前面两篇 Python 爬虫第一篇(urllib+regex) 和 Python 爬虫第二篇(urllib+BeautifulSoup) 中介绍了如何获取给定网址 ...

  5. VC 获取屏幕及打印机的像素,DPI,英寸数,毫米数,缇数(twips)

    void GetPixelsPermm(double& iPixelPermX, double& iPixelPermY)  {   //获得屏幕的宽(像素值)   double fx ...

  6. android查看屏幕大小,android获取屏幕尺寸的三种代码

    第一种:DisplayMetrics dm = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(dm); ...

  7. windows系统重装(安装)第三篇——利用PE系统下的WinNTSetup工具重装系统

    如果不知道怎么制作PE环境的,请看第一篇-------->>>>>>windows系统重装(安装)第一篇--老毛桃本地PE环境的安装 如果想使用更简单的安装方式请看 ...

  8. mfc获取别的计算机是否在线,VC获取并修改计算机屏幕分辨率(MFC)

    //检测当前分辨率 int Width = GetSystemMetrics(SM_CXSCREEN); int Height = GetSystemMetrics(SM_CYSCREEN); DEV ...

  9. mfc改计算机名称,VC获取并修改计算机屏幕分辨率(MFC)

    //检测当前分辨率 int Width = GetSystemMetrics(SM_CXSCREEN); int Height = GetSystemMetrics(SM_CYSCREEN); DEV ...

最新文章

  1. chart.Correlation绘制相关性热图
  2. Linux solr 启动命令,linux – 重启Solr的正确方法是什么
  3. linux与开发板串口通信
  4. 80核处理器_标压版锐龙处理器更香!联想小新Pro 13轻薄笔记本评测
  5. 机器学习——支持向量机SVM之线性模型
  6. 【elasticsearch】elasticsearch 7 index.lifecycle.rollover_alias does not point to index
  7. 理解图像中的低频分量和高频分量
  8. 龙之谷冰龙linux手工服务端,【网游】【龙之谷】v300冰龙巢穴一键服务端+客户端+GM工具+视频教程...
  9. html5妇女节游戏,三八妇女节趣味小游戏
  10. ImportError: Missing required dependencies [‘pytz‘]
  11. 智能门锁服务器,【胖猴小玩闹】智能门锁与网关:海康萤石智能门锁的网关分析(三)...
  12. CSDN文章如何设置【分级标题】和【目录】
  13. php伪装请求ip,php搞定ip伪装的两种方式
  14. vue如何返回上一页效果
  15. VTK和numpy的整合
  16. 微信小程序-001-抽签功能-008-简单登录
  17. 巨杉数据库v5.0携手迪思杰深化战略级合作
  18. 老本拯救计划——联想Ideapad 320S-15IKB笔记本加装SSD教程
  19. python爬虫实现股票数据存储_Python爬虫抓取东方财富网股票数据并实现MySQL数据库存储!...
  20. unix环境高级编程----进程控制fock()函数

热门文章

  1. 登录页面html代码_【网络自动化平台开发】—— 登录组件
  2. python提取数据包中的文件_Python-对Pcap文件进行处理,获取指定TCP流
  3. Linux系统云主机教程,新开的linux云主机磁盘挂载教程
  4. 代理服务器地址在哪里看_看完这篇还不了解Nginx,那我就没你办法了
  5. SAP MM 巴西采购订单中的NCM Code
  6. 今日头条屏幕适配方案落地研究
  7. 可变数组NSMutableArray
  8. 精品教程---Android应用程序框架
  9. Mysql数据字典导出
  10. 配置一个 MVC 项目时 遇到的