首页 > 代码库 > 解决Duilib创建的win32窗口拖到屏幕上边缘自动最大化

解决Duilib创建的win32窗口拖到屏幕上边缘自动最大化

转载:http://bbs.csdn.net/topics/390842294

使用Duilib创建窗口的时候,假如有这样一个需求:

1.窗口大小规定

2.不可拖拽改变窗口大小

3.双击标题栏禁止最大化

4.禁止拖拽窗口到屏幕上边沿最大化

技术分享

针对以上四点,给出解决办法:

1.设置size="宽,高"

2.sizebox="0,0,0,0"

3.在HandleMessage中屏蔽掉WM_NCLBUTTONDBLCLK

 

1 case WM_NCLBUTTONDBLCLK:2     //不做处理3 {4     return 0;5 }6 break;

4.要修改窗口风格

//修改窗口风格    SetWindowLong(m_hWnd,GWL_STYLE,GetWindowLong(m_hWnd,GWL_STYLE) & ~WS_MAXIMIZEBOX & ~WS_THICKFRAME );

 

设置完成后:

技术分享

解决Duilib创建的win32窗口拖到屏幕上边缘自动最大化