日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

VC++获取屏幕大小第三篇 物理大小GetDeviceCaps 下

發布時間:2025/3/12 c/c++ 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 VC++获取屏幕大小第三篇 物理大小GetDeviceCaps 下 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
本篇文章(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?
  • //?獲取屏幕大小?物理大小??
  • #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);???//獲取屏幕的HDC??
  • ????nScreenWidth?=?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;??
  • }??
  • // 獲取屏幕大小 物理大小 #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 下的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。