操作系统一一些信息,比如桌面窗口大小,光标大小,标题栏大小等等都可以通过函数GetSystemMetrics来获得。
函数可以传递非常多参数,进而获得不同的信息。
- void CDemoDlg::OnTest()
- {
- CListBox* pListBox = (CListBox*)GetDlgItem(IDC_LIST);
- pListBox->ResetContent();
- int nWidth = 0;
- int nHeight = 0;
- CString strText = _T("");
- //屏幕大小
- strText.Format(_T("屏幕大小: %d × %d"),
- GetSystemMetrics(SM_CXSCREEN),
- GetSystemMetrics(SM_CYSCREEN));
- pListBox->AddString(strText);
- //全屏窗口客户区大小
- strText.Format(_T("全屏窗口客户区大小: %d × %d"),
- GetSystemMetrics(SM_CXFULLSCREEN),
- GetSystemMetrics(SM_CYFULLSCREEN));
- pListBox->AddString(strText);
- //最大化窗口大小
- strText.Format(_T("最大化窗口大小: %d × %d"),
- GetSystemMetrics(SM_CXMAXIMIZED),
- GetSystemMetrics(SM_CYMAXIMIZED));
- pListBox->AddString(strText);
- //最小化窗口大小
- strText.Format(_T("最小化窗口大小: %d × %d"),
- GetSystemMetrics(SM_CXMINIMIZED),
- GetSystemMetrics(SM_CYMINIMIZED));
- pListBox->AddString(strText);
- //窗口边界大小
- strText.Format(_T("窗口边界大小: %d × %d"),
- GetSystemMetrics(SM_CXBORDER),
- GetSystemMetrics(SM_CYBORDER));
- pListBox->AddString(strText);
- //固定框架厚度
- strText.Format(_T("固定框架厚度: %d × %d"),
- GetSystemMetrics(SM_CXFIXEDFRAME),
- GetSystemMetrics(SM_CYFIXEDFRAME));
- pListBox->AddString(strText);
- //可变框架厚度
- strText.Format(_T("可变框架厚度: %d × %d"),
- GetSystemMetrics(SM_CXSIZEFRAME),
- GetSystemMetrics(SM_CYSIZEFRAME));
- pListBox->AddString(strText);
-
- //水平滚动条箭头大小
- strText.Format(_T("水平滚动条箭头大小: %d × %d"),
- GetSystemMetrics(SM_CXHSCROLL),
- GetSystemMetrics(SM_CYHSCROLL));
- pListBox->AddString(strText);
- //垂直滚动条箭头大小
- strText.Format(_T("垂直滚动条箭头大小: %d × %d"),
- GetSystemMetrics(SM_CXVSCROLL),
- GetSystemMetrics(SM_CYVSCROLL));
- pListBox->AddString(strText);
- //标题栏高度
- strText.Format(_T("标题栏高度: %d"),
- GetSystemMetrics(SM_CYCAPTION));
- pListBox->AddString(strText);
- //标题栏按钮大小
- strText.Format(_T("标题栏按钮大小: %d × %d"),
- GetSystemMetrics(SM_CXSIZE),
- GetSystemMetrics(SM_CYSIZE));
- pListBox->AddString(strText);
- //菜单栏高度
- strText.Format(_T("菜单栏高度: %d"),
- GetSystemMetrics(SM_CYMENU));
- pListBox->AddString(strText);
- //光标大小
- strText.Format(_T(""));
- strText.Format(_T("光标大小: %d × %d"),
- GetSystemMetrics(SM_CXCURSOR),
- GetSystemMetrics(SM_CYCURSOR));
- pListBox->AddString(strText);
- //图标大小
- strText.Format(_T(""));
- strText.Format(_T("默认图标大小: %d × %d"),
- GetSystemMetrics(SM_CXICON),
- GetSystemMetrics(SM_CYICON));
- pListBox->AddString(strText);
- }
复制代码 上面代码就是一个按钮点击函数内实现系统度量信息的。
IDC_LIST为自己添加的列表框控件。
|