hur.cn - 华软网

 热门搜索

怎么才能设置客户区大小呢?

  作者:未知    来源:网络    更新时间:2010/9/9

BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
if( !CFrameWnd::PreCreateWindow(cs) )
return FALSE;
// TODO: Modify the Window class or styles here by modifying
//  the CREATESTRUCT cs
cs.style |= WS_VISIBLE | WS_MAXIMIZE;   // 设置文档页最大化显示

cs.cx=1024;
cs.cy=800;

return TRUE;
}
我想设置VC6中单文本客户区域(不包含菜单栏等)的大小. 以上是设置整个单文本窗口. 怎么才能设置客户区大小呢?
---华软 网友回答---
AdjustWindowRect
---华软网友回复---
用AdjustWindowRect需要指定客户区域矩形坐上角和右下角的坐标. 我想让窗口置中显示并且客户区域view大小为1024*800. 怎么设置比较好?
---华软网友回复---
先搞清楚哪些区域是客户区吧。你要的效果可能是一个固定大小窗体居中显示吧。
---华软网友回复---
你是说类似于VC的界面程序吧,
BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext) 

if (!m_wndSplitterMain.CreateStatic(this, 2, 1))//BottomView
return FALSE;

if (!m_wndSplitterTop.CreateStatic(&m_wndSplitterMain, 1, 2,WS_CHILD|WS_VISIBLE, m_wndSplitterMain.IdFromRowCol(0, 0)))//BottomView
   return FALSE;

if (!m_wndSplitterTop.CreateView(0, 0, RUNTIME_CLASS(CleftView), CSize(300, 300), pContext) ||
!m_wndSplitterTop.CreateView(0, 1,  RUNTIME_CLASS(CMainView), CSize(300, 200), pContext))
{
m_wndSplitterMain.DestroyWindow();
return FALSE;
}

---华软网友回复---
楼上提供的编译不通过. 我用的是VC6下单文本工程, 
以下是指定整个单文本窗口大小.而我想该指定窗口除了菜单栏和工具栏白色区域的大小. 应该怎么做?
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
if( !CFrameWnd::PreCreateWindow(cs) )
return FALSE;
// TODO: Modify the Window class or styles here by modifying
// the CREATESTRUCT cs
cs.style |= WS_VISIBLE | WS_MAXIMIZE; // 设置文档页最大化显示

cs.cx=1024;
cs.cy=800;

return TRUE;
}
---华软网友回复---
movewindow(); 直接设置大小
---华软网友回复---
只能切分窗口,不切分的话,空白区域的宽度始终等于标题栏的宽度,你找下切分窗口方面的资料看看就得了,没什么复杂的。
---华软网友回复---
AdjustWindowRect && MoveWindow      
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。