你在dos命令窗直接打命令:
wmic
desktopmonitor
get
screenwidth,
screenheight
就有分辨率了,例如,显示:
screenheight
screenwidth
768
1024
写c/c++程序,可以用:
system("wmic
desktopmonitor
get
screenwidth,
screenheight");
--
这是平时说的full-screen
(满频)。程序里需要计算和安排的。
全屏并不一定是1024768的啊
你如果要全屏的话,先获取屏幕尺寸,然后设置窗口大小就行了。代码如下:
int nFullWidth = GetSystemMetrics(SM_CXSCREEN);
int nFullHeight = GetSystemMetrics(SM_CYSCREEN);
MoveWindow(0, 0, nFullWidth, nFullHeight);
如果只是想设置1024768,那么把后面两个参数写死就行了。
选项卡=Resource view下有dialog 资源里面有2个对话筐
一个是about对话框还一个就是运行时候的对话框你双击就可以d出来然后就可以像VB里面的一样更改它的一些控件
mfc不同电脑大小不同屏幕大小不一样,分辨率一样。根据查询相关公开信息,mfc程序界面由多个子窗口组成,屏幕大小不一样,分辨率一样显示不全,先是在屏幕长度较小,宽度较大的电脑上制作的对话框。只需要获取当前屏幕的分辨率,再将程序的宽和高设置为其分辨率的倍数即可。但是这里需要注意的是,需要写一个resize函数使得控件大小随客户区大小改变。
testDlg::OnSize(UINT nType, int cx, int cy)
{
CDialog::OnSize(nType, cx, cy);
// TODO: 在此处添加消息处理程序代码
static RECT LastWindowRect = ;//用来保存窗口上一次的大小
CWnd hWin;//构造一个句柄
int ux = cx - LastWindowRectright;
//求出窗口的水平变化量
int uy = cy - LastWindowRectbottom;
//求出窗口的竖直变化量
if((hWin = GetDlgItem(IDC_PPP)) != NULL) //IDC_LIST1为控件的ID号
{
RECT rect;
hWin->GetWindowRect(&rect);//获得控件的大小
ScreenToClient(&rect);//设备到客户
rectright += ux;//
rectbottom += uy;
hWin->MoveWindow(&rect);//改变控件大小
}
LastWindowRectright = cx;
LastWindowRectbottom = cy;
}
另外,站长团上有产品团购,便宜有保证
以上就是关于C++如何获取桌面分辨率大小全部的内容,包括:C++如何获取桌面分辨率大小、mfc基于对话框窗口最大化与指定分辨率问题、MFC AppWizard(exe)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)