【求】要求窗口大小不可改变

来源:百度知道 编辑:UC知道 时间:2024/06/23 17:13:36
如题
CreateWindow时用什么参数呢?
别用mfc,我没学过。

在框架窗口的PreCreateWindow(CREATESTRUCT &cs)加入如下代码:
cs.style=cs.style^WS_THICKFRAME;
就像这样:
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
if( !CFrameWnd::PreCreateWindow(cs) )
return FALSE;
cs.style=cs.style^WS_THICKFRAME;
return TRUE;
}
如果不是MFC的话,那么在CreateWindow的时候,不要加上WS_THICKFRAME样式即可,就像:
CreateWindow("absafe","fdsafd",
WS_OVERLAPPEDWINDOW^WS_THICKFRAME,
CW_USEDEFAULT ,CW_USEDEFAULT ,CW_USEDEFAULT ,CW_USEDEFAULT,
NULL,NULL,hInstance,NULL);

重写窗口的OnSize 函数。
函数体为
CRect rect(0,0,192,192);
CalcWindowRect(&rect);
SetWindowPos(NULL,0,0,rect.Width(),rect.Height(),SWP_NOZORDER|SWP_NOREDRAW);

WS_BORDER
MSDN的window styles对这些参数都有说明

SetWindowPos最后一个参数指定为SWP_NOSIZE 试试。