我想在win32中使用
SendMessage()
设置图片框的样式。
我想要一段带有用于设置样式的枚举值的示例代码。
你想要的是
LONG_PTR SetWindowLongPtr(HWND hWnd, int nIndex, LONG_PTR dwNewLong);
函数,根据MSDN“函数改变指定窗口的属性”。 nIndex 参数应设置为“GWL_STYLE”,“dwNewLong”代表新样式。
您可以为样式选择各种值(使用常量)。
MSDN 上有一篇很棒的文章详细探讨了这一点:http://msdn.microsoft.com/en-us/library/ms997562.aspx其中包含您可以设置的各种样式的列表。
您可以使用例如用新值替换旧值
LONG_PTR oldStyle = GetWindowLongPtr(hPicture, GWL_STYLE);
LONG_PTR newStyle = (oldStyle & ~SS_ICON) | SS_BITMAP;
SetWindowLongPtr(hPicture, GWL_STYLE, newStyle);
其中 hPicture 是图片控件的句柄。