CWnd::ModifyStyle
调用该成员函数修改窗口的样式。
BOOL ModifyStyle(
DWORD dwRemove,
DWORD dwAdd,
UINT nFlags = 0
);
参数
dwRemove
指定在样式修改时要移除的窗口样式。dwAdd
指定在样式修改时要添加的窗口样式。nFlags
标志将于 SetWindowPos或零,如果 SetWindowPos 不应调用。默认值为零。为被预设的标志列表参见"备注"节。
返回值
非零,如果成功修改该样式;否则,0。
备注
将添加或删除了样式可以按位组合使用或(|)运算符。有关可用的窗口样式的信息,请参见。Windows SDK 的主题 窗口样式 和 CreateWindow。
如果 nFlags 不为零,ModifyStyle 调用Windows API函数 SetWindowPos 并将 nFlags 重绘窗口与以下四个被预设的标志:
SWP_NOSIZE 保留当前范围。
SWP_NOMOVE 保留当前位置。
SWP_NOZORDER 保留当前的Z顺序。
SWP_NOACTIVATE 不窗口被激活。
若要修改窗口的扩展的样式,请参见 ModifyStyleEx。
说明 |
---|
对于某些控件(在编辑控件(如 ES_READONLY 样式的某些样式,),ModifyStyle 不能正确更改该样式,因为控件可能需要执行特定内部处理。在这些情况下,将该样式的对应的消息将可用(在本示例中的EM_SETREADONLY )。 |
示例
// This example adds the WS_CLIPCHILDREN style to the window.
// No Styles are removed from the window.
void CMyView::OnInitialUpdate()
{
CView::OnInitialUpdate();
ModifyStyle(0, WS_CLIPCHILDREN);
}
要求
Header: afxwin.h