mfc安卓屏幕分辨率修改怎么去修改

2006年10月 总版技术专家分月排行榜第二2006年9月 总版技术专家分月排行榜第二
2006年5月 总版技术专家分月排行榜第三
匿名用户不能发表回复!|转:MFC窗口位置和大小的获取
1、获取屏幕分辨率
//下边两个函数获取的是显示屏幕的大小,但不包括任务栏等区域
int cx = GetSystemMetrics(SM_CXFULLSCREEN);
int cy = GetSystemMetrics(SM_CYFULLSCREEN);
//下边这两个函数获取的是真正屏幕的大小:屏幕分辨率
int nWidth=GetSystemMetrics(SM_CXSCREEN);
//屏幕宽度
int nHeight=GetSystemMetrics(SM_CYSCREEN); //屏幕高度
CString strS
strScreen.Format(L"%d,%d",nWidth,nHeight);
MessageBox(strScreen);
2、获取对话框窗体大小及其屏幕坐标
//对话框窗体大小及其屏幕坐标
CRect rectD
GetClientRect(rectDlg);//获得窗体的大小
//GetWindowRect(rectDlg);//获得窗体在屏幕上的位置
//ScreenToClient(rectDlg);
CString strD
strDlg.Format(L"%d,%d,%d,%d",rectDlg.left,rectDlg.top,rectDlg.Width(),rectDlg.Height());
MessageBox(strDlg);
3、获取控件大小和位置
//控件大小和位置
CRect rectC
CStatic *p=(CStatic*)GetDlgItem(IDC_STATIC_TEST);
p-&MoveWindow(100,100,100,100);//更改控件大小并移动其到指定位置
p-&GetWindowRect(rectCtrl);
this-&ScreenToClient(rectCtrl);
//GetDlgItem(IDC_STATIC_TEST)-&GetClientRect(rectCtrl);
str.Format(L"%d,%d,%d,%d",rectCtrl.left,rectCtrl.top,rectCtrl.Width(),rectCtrl.Height());
MessageBox(str);
  1、GetSystemMetrics() &--&
&用于得到被定义的系统数据或者系统配置信息;
  2、GetClientRect() --&
&得到客户区的位置和大小,一般用于获取窗口大小;
  3、GetWindowRect() --&
&得到窗口(对话框或控件)的屏幕坐标,一般用于获取对话框的屏幕坐标或和ScreenToClient()配合使用获取控件的客户区坐标;
  4、ScreenToClient() &--&
&屏幕坐标转换为客户区坐标,一般和GetWindowRect()配合使用获取控件的客户区坐标;
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。MFC怎么根据分辨率大小设置窗口大小._百度知道
MFC怎么根据分辨率大小设置窗口大小.
例如,在一台电脑上,编写一个MFC窗口程序,但是在其他机器上运行的时候(机器的分辨率不同),大小就变的不一样,请问如何解决这样的问题呢
我有更好的答案
窗口大小为XXXXXXif(cx&1024){& &你可以加比如X小于1024就& &cy=GetSystemMetrics(SM_CYSCREEN).com/zhidao/wh%3D600%2C800/sign=22bd43d595cad1c8d0eefb31/4a36acaf2edda3cc6e2aebda01e9.jpg" esrc="http://c.int&nbsp.&nbsp.jpg" target="_blank" title="点击查看大图" class="ikqb_img_alink">这两句是获取屏幕分辨率的宽度x和高度y的int&nbsp.baidu.hiphotos.baidu.com/zhidao/pic/item/4a36acaf2edda3cc6e2aebda01e9://c<a href=" xxxxxx}else&if(cy&500){&nbsp
有例子么,我的窗口是拖拽后显示的那么大,我也不知道窗口是多大。
采纳率:56%
通常是全屏的和最小的那个,其他两个要看电脑性能,求采纳
代码怎么实现。
为您推荐:
其他类似问题
窗口大小的相关知识
&#xe675;换一换
回答问题,赢新手礼包&#xe6b9;
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。VC MFC界面怎么根据桌面分辨率自动设置显示窗口和控件的大小_百度知道
VC MFC界面怎么根据桌面分辨率自动设置显示窗口和控件的大小
:OnSize(nType,rc.left。void CClientD列表1 if (pWnd) { CR
pWnd-&&#47;将控件大小转换为在对话框中的区域坐标
rc.Height()), cy);
int nFullWidth = GetSystemMetrics(SM_CXSCREEN)::OnSize(UINT nType, int cx, int cy) { CD&#47;&#47, int nFullHeight = GetSystemMetrics(SM_CYSCREEN); CWnd *pW pWnd=GetDlgItem(IDC_STATICIP);
pWnd-&SetWindowPos( NULL下边是我OnSize里的代码.top=rc.top+(cy-m_GetWindowRect(&rc);
ScreenToClient(&rc);&#47,请帮忙看看
我有更好的答案
大致思路就这样:int
GetSystemMetrics(SM_CXSCREEN);
GetSystemMetrics(SM_CYSCREEN);处理WM_SIZE,将大小算好改变然后再重新显示使用GetSystemMetrics获取显示器屏幕大小,然后调整设置窗口的大小根据屏幕大小来按比例设置,比如屏幕宽的80%,高的60%来设置你窗口大小等获取屏幕坐标
我就是这样写的,但是想要的效果出不来。
在 OnSize 中操作窗口需要先判断一下控件窗口是否已经创建,然后在进行操作判读m_test控控方法:if (IsWindow(m_test.GetSafeHwnd())){
&#47;&#47;操作}
采纳率:51%
去网上查呗
查到了还用问啊。
1条折叠回答
为您推荐:
其他类似问题
mfc的相关知识
&#xe675;换一换
回答问题,赢新手礼包&#xe6b9;
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。2006年10月 VC/MFC大版内专家分月排行榜第二
2003年11月 VC/MFC大版内专家分月排行榜第三
2003年11月 VC/MFC大版内专家分月排行榜第一
2004年9月 总版技术专家分月排行榜第二
2005年3月 总版技术专家分月排行榜第三2004年8月 总版技术专家分月排行榜第三2004年7月 总版技术专家分月排行榜第三
匿名用户不能发表回复!|

我要回帖

更多关于 mfc 扩展屏幕分辨率 的文章

 

随机推荐