如何得到屏幕的真实尺寸

来源:清泛编译     2016-05-23 13:43:54    人气:     我有话说( 0 人参与)

1.属性页的添加:创建对话框的类,该类要从CpropertyPage继承;然后在要添加该对话框为 属性页的类(头文件)里创建CpropertySheet类的一

58.如何得到屏幕的真实尺寸

[问题提出]
我的屏幕是1024*800,如何得到屏幕的真实大小,我用GetSystemMetrics(SM_CYFULLSCREEN)得到的高度总是小于800
[问题解答]
GetSystemMetrics(SM_CYFULLSCREEN)得到的只是屏幕用户区的大小。要得到屏幕的真实大小需要使用
GetDeviceCaps函数,该API函数原型是这样的:

int GetDeviceCaps(
 HDC hdc,   // handle to DC
 int nIndex  // index of capability
);
///得到屏幕尺寸的代码如下
void CMyDlg::OnPaint() 
{
  CPaintDC dc(this); 
  int cx = ::GetDeviceCaps(dc.m_hDC,HORZRES);///得到宽度
  int cy = ::GetDeviceCaps(dc.m_hDC,VERTRES);///得到高度
  CDialog::OnPaint();

本文导航

MFC 总结 技巧

本文源自互联网,采用知识共享署名-非商业性使用 4.0 国际许可协议进行许可,
版权归原作者,如有问题请联系service@tsingfun.com (编辑:admin)
分享到: