窗口设置成固定大小
BOOL SetWindowPos(HWN hWnd,HWND hWndlnsertAfter,int X,int Y,int cx,int cy,UNIT.Flags);
屏蔽掉最大化这个按钮在PreCreateWindow中处理
BOOL SetWindowPos(HWN hWnd,HWND hWndlnsertAfter,int X,int Y,int cx,int cy,UNIT.Flags);
屏蔽掉最大化这个按钮在PreCreateWindow中处理
调试欢乐多
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.x = 0;//位置
cs.y = 0;//
cs.cx = 500;//宽
cs.cy = 500;//高 cs.style &= ~WS_MAXIMIZEBOX;//禁止最大花 return TRUE;
}
怎么来做到固定窗口大小和取消最大化按钮?
我是这么写的:
SetWindowPos(hwnd,HWND_TOP,rect.left,rect.top,4,400,SWP_NOSIZE);
可是不起作用呀。
hwnd = CreateWindow(Appname,TEXT("The Hello Program"),
WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME | MINIMIZEBOX,
100,100,400,400,NULL,NULL,hinst,NULL);
如果是就用如下代码
hwnd = CreateWindow(Appname,TEXT("The Hello Program"),
WS_OVERLAPPED ¦ WS_CAPTION ¦ WS_SYSMENU ¦ WS_EX_DLGMODALFRAME ¦ MINIMIZEBOX,
100,100,400,400,NULL,NULL,hinst,NULL);
还有,虽然常口不能调整大小了,但是最大化和最小化两个按钮也没有了。我希望这两个按钮还能被显示出来,只是最大化这个按钮变为无效(灰颜色)。
hwnd = CreateWindow(Appname,TEXT("The Hello Program"),
WS_OVERLAPPED|WS_CAPTION|WS_SYSMENU|WS_EX_DLGMODALFRAME|WS_MINIMIZEBOX,
100,100,400,400,NULL,NULL,hinst,NULL);
对不起我打字时打错了,
WS_MINIMIZEBOX就是在窗口中显示最小化按钮
另,窗口的样式在WINUSER.H的头文件中都有定义,你可以去看看