VC MFC 获取屏幕大小 程序窗口大小位置 控件大小位置

13 篇文章 0 订阅

//下边两个函数获取的是显示屏幕的大小,但不包括任务栏等区域
int cx = GetSystemMetrics(SM_CXFULLSCREEN);
int cy = GetSystemMetrics(SM_CYFULLSCREEN);

printf("屏幕大小(不含任务栏):宽:%d,高:%d \r\n",  cx,cy);

//下边这两个函数获取的是真正屏幕的大小:屏幕分辨率
int nWidth = GetSystemMetrics(SM_CXSCREEN);  //屏幕宽度    
int nHeight = GetSystemMetrics(SM_CYSCREEN); //屏幕高度

printf("屏幕大小:宽:%d,高:%d \r\n", nWidth,nHeight);

//对话框窗体大小及其屏幕坐标
CRect rectDlg;
//GetClientRect(rectDlg);//获得窗体的大小 //法1:
GetWindowRect(rectDlg);//获得窗体在屏幕上的位置 //法2:
ScreenToClient(rectDlg);

printf("窗口位置大小:底:%d, 右:%d, 宽:%d, 高:%d\r\n", rectDlg.bottom, rectDlg.right, rectDlg.Width(), rectDlg.Height());

//控件大小和位置
CRect rectCtrl;
CStatic *p = (CStatic*)GetDlgItem(IDC_VIDEOSHOW1);
//p->MoveWindow(100, 100, 100, 100);//更改控件大小并移动其到指定位置
p->GetWindowRect(rectCtrl);
this->ScreenToClient(rectCtrl);
//GetDlgItem(IDC_STATIC_TEST)->GetClientRect(rectCtrl);

printf("控件位置大小:左:%d, 顶:%d, 宽:%d, 高:%d\r\n", rectCtrl.left, rectCtrl.top, rectCtrl.Width(), rectCtrl.Height());

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值