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

时间:2021-07-30 17:40:39

使用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窗口拖到屏幕上边缘自动最大化