//m_hDiabloWnd是CWnd类型的指针,下面设置窗体的语句生效
CRgn rgn_wRgn;
CRect rect_wRect=new CRect(m_iXPos,m_iYPos,m_iWidth,m_iHeight);
rgn_wRgn.CreateRectRgnIndirect(&rect_wRect);
m_hDiabloWnd->SetWindowRgn((HRGN)rgn_wRgn.GetSafeHandle(),TRUE);//可是下面用来置定的语句不行了,问题在哪? if(m_bTopmost==FALSE)
{
//m_hDiabloWnd->SetWindowPos(&m_hDiabloWnd->wndTopMost,0,0,0,0,SWP_NOSIZE|SWP_NOMOVE|SWP_NOACTIVATE|SWP_SHOWWINDOW);
m_hDiabloWnd->ModifyStyleEx(SWP_NOZORDER,0,0);
::SetWindowPos(m_hDiabloWnd->GetSafeHwnd(),HWND_TOPMOST,0,0,0,0,SWP_NOMOVE | SWP_NOSIZE | SWP_NOZORDER | SWP_FRAMECHANGED);
m_hDiabloWnd->ShowWindow(SW_RESTORE);
m_bTopmost=TRUE;
CButton* btn_settop=(CButton*)GetDlgItem(IDC_BUTTON_SETTOP);
btn_settop->SetWindowText("Set Window NoTopMost"); }
else
{
//m_hDiabloWnd->SetWindowPos(&m_hDiabloWnd->wndTopMost,0,0,0,0,SWP_NOSIZE|SWP_NOMOVE|SWP_NOACTIVATE|SWP_SHOWWINDOW);
m_hDiabloWnd->ModifyStyleEx(SWP_NOZORDER,0,0);
::SetWindowPos(m_hDiabloWnd->GetSafeHwnd(),HWND_NOTOPMOST,0,0,0,0,SWP_NOMOVE | SWP_NOSIZE | SWP_NOZORDER | SWP_FRAMECHANGED);
m_hDiabloWnd->ShowWindow(SW_RESTORE);
m_bTopmost=FALSE;
CButton* btn_settop=(CButton*)GetDlgItem(IDC_BUTTON_SETTOP);
btn_settop->SetWindowText("Set Window TopMost"); }
CRgn rgn_wRgn;
CRect rect_wRect=new CRect(m_iXPos,m_iYPos,m_iWidth,m_iHeight);
rgn_wRgn.CreateRectRgnIndirect(&rect_wRect);
m_hDiabloWnd->SetWindowRgn((HRGN)rgn_wRgn.GetSafeHandle(),TRUE);//可是下面用来置定的语句不行了,问题在哪? if(m_bTopmost==FALSE)
{
//m_hDiabloWnd->SetWindowPos(&m_hDiabloWnd->wndTopMost,0,0,0,0,SWP_NOSIZE|SWP_NOMOVE|SWP_NOACTIVATE|SWP_SHOWWINDOW);
m_hDiabloWnd->ModifyStyleEx(SWP_NOZORDER,0,0);
::SetWindowPos(m_hDiabloWnd->GetSafeHwnd(),HWND_TOPMOST,0,0,0,0,SWP_NOMOVE | SWP_NOSIZE | SWP_NOZORDER | SWP_FRAMECHANGED);
m_hDiabloWnd->ShowWindow(SW_RESTORE);
m_bTopmost=TRUE;
CButton* btn_settop=(CButton*)GetDlgItem(IDC_BUTTON_SETTOP);
btn_settop->SetWindowText("Set Window NoTopMost"); }
else
{
//m_hDiabloWnd->SetWindowPos(&m_hDiabloWnd->wndTopMost,0,0,0,0,SWP_NOSIZE|SWP_NOMOVE|SWP_NOACTIVATE|SWP_SHOWWINDOW);
m_hDiabloWnd->ModifyStyleEx(SWP_NOZORDER,0,0);
::SetWindowPos(m_hDiabloWnd->GetSafeHwnd(),HWND_NOTOPMOST,0,0,0,0,SWP_NOMOVE | SWP_NOSIZE | SWP_NOZORDER | SWP_FRAMECHANGED);
m_hDiabloWnd->ShowWindow(SW_RESTORE);
m_bTopmost=FALSE;
CButton* btn_settop=(CButton*)GetDlgItem(IDC_BUTTON_SETTOP);
btn_settop->SetWindowText("Set Window TopMost"); }
加第二个参数HWND_TOPMOST
ModifyStyleEx(0,WS_EX_TOPMOST);
但是我用语句:m_hDiabloWnd->ModifyStyle(WS_CAPTION|WS_MINIMIZE,0);能去掉WS_CAPTION属性,确不能去掉WS_MINIMIZE,为什么?
还有WS_MINIMIZE是什么作用?