VC++怎么设置对话框大小?
想设置对话框大小为1024*768直接鼠标拖动的话,超出界面显示了放控件看不到全局位置,而且编译后比1024*768还要大很多用SetWindowPos,设置长宽,没编译...
想设置对话框大小为1024*768
直接鼠标拖动的话,超出界面显示了放控件看不到全局位置,而且编译后比1024*768还要大很多
用SetWindowPos,设置长宽,没编译的时候,对话框就是建立时默认大小,添加控件很不方便
该怎么解决呢?既能设置成想要的大小,放控件也能看到全局位置?
问题是,用函数方法设置的话,没编译的时候,对话框的大小不变啊,只有编译后才能看到。那放控件的时候怎么放?
如果按照默认显示的大小放了(并不是想要的尺寸),那编译后成了实际想要的大小,控件位置不全乱套了?或者说是集中在某处,整个窗口其他位置都是空的?
怎样没编译前就能设置好想要的大小?这样放控件后,编译后位置也不会变
就是所见即所得的编辑方法是什么?
我用的是10号字体,怎么换算DLUs成1024*768? 展开
直接鼠标拖动的话,超出界面显示了放控件看不到全局位置,而且编译后比1024*768还要大很多
用SetWindowPos,设置长宽,没编译的时候,对话框就是建立时默认大小,添加控件很不方便
该怎么解决呢?既能设置成想要的大小,放控件也能看到全局位置?
问题是,用函数方法设置的话,没编译的时候,对话框的大小不变啊,只有编译后才能看到。那放控件的时候怎么放?
如果按照默认显示的大小放了(并不是想要的尺寸),那编译后成了实际想要的大小,控件位置不全乱套了?或者说是集中在某处,整个窗口其他位置都是空的?
怎样没编译前就能设置好想要的大小?这样放控件后,编译后位置也不会变
就是所见即所得的编辑方法是什么?
我用的是10号字体,怎么换算DLUs成1024*768? 展开
4个回答
展开全部
BOOL MyDlgApp::OnInitDialog()
{
int cx = GetSystemMetrics(SM_CXSCREEN);
int cy = GetSystemMetrics(SM_CYSCREEN);
MoveWindow(0, 0, cx, cy);
实现全屏显示
也可以通过系统消息实现
SendMessage(WM_SYSCOMMAND,SC_MAXIMIZE);//最大化显示
PostMessage(WM_SYSCOMMAND,SC_MAXIMIZE);//最大化显示
注:SendMessage是随调随用,PostMessage是把消息发送到消息队列,一个一个执行,看你怎么用了
}
{
int cx = GetSystemMetrics(SM_CXSCREEN);
int cy = GetSystemMetrics(SM_CYSCREEN);
MoveWindow(0, 0, cx, cy);
实现全屏显示
也可以通过系统消息实现
SendMessage(WM_SYSCOMMAND,SC_MAXIMIZE);//最大化显示
PostMessage(WM_SYSCOMMAND,SC_MAXIMIZE);//最大化显示
注:SendMessage是随调随用,PostMessage是把消息发送到消息队列,一个一个执行,看你怎么用了
}
展开全部
用记事本打开.rc文件,然后改里面的坐标,如:
以下是rc文件
/////////////////////////////////////////////////////////////////////////////
//
// Dialog
//
IDD_ABOUTBOX DIALOGEX 0, 0, 170, 62
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "关于 Server"
FONT 9, "MS Shell Dlg", 0, 0, 0x1
BEGIN
ICON IDR_MAINFRAME,IDC_STATIC,14,14,21,20
LTEXT "Server,1.0 版",IDC_STATIC,42,14,114,8,SS_NOPREFIX
LTEXT "Copyright (C) 2010",IDC_STATIC,42,26,114,8
DEFPUSHBUTTON "确定",IDOK,113,41,50,14,WS_GROUP
END
只要把“IDD_ABOUTBOX DIALOGEX 0, 0, 170, 62”改一下就可以改变about窗口的大小,其它的对话框类似
以下是rc文件
/////////////////////////////////////////////////////////////////////////////
//
// Dialog
//
IDD_ABOUTBOX DIALOGEX 0, 0, 170, 62
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "关于 Server"
FONT 9, "MS Shell Dlg", 0, 0, 0x1
BEGIN
ICON IDR_MAINFRAME,IDC_STATIC,14,14,21,20
LTEXT "Server,1.0 版",IDC_STATIC,42,14,114,8,SS_NOPREFIX
LTEXT "Copyright (C) 2010",IDC_STATIC,42,26,114,8
DEFPUSHBUTTON "确定",IDOK,113,41,50,14,WS_GROUP
END
只要把“IDD_ABOUTBOX DIALOGEX 0, 0, 170, 62”改一下就可以改变about窗口的大小,其它的对话框类似
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
movewindow,就够了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
SetWindowPos 在OnInitDialog中使用即可
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询