BM_SETSTYLE

【勇芳软件工作室】汉化HomePreviousNext

应用程序发送BM_SETSTYLE消息来更改按钮的样式。

BM_SETSTYLE

wParam = (WPARAM) LOWORD(dwStyle); //风格

lParam = MAKELPARAM(fRedraw, 0); //重绘旗帜

参数

【dwStyle】

价值【wParam中】.指定按钮样式。有关按钮样式的说明,请参阅以下备注部分。

【fRedraw】

【lParam的】的低位字的值。指定是否重新绘制按钮。TRUE值重绘按钮;值FALSE不会重绘按钮。

返回值

此消息总是返回零。

备注

以下是可用的按钮样式:

样式含义
BS_3STATE创建一个与复选框相同的按钮,不同之处在于框可以是灰色的,也可以是勾选或取消选中。使用灰色状态显示复选框的状态未确定。
BS_AUTO3STATE创建与三状态复选框相同的按钮,除了用户选择该框之后,框会更改其状态。状态通过检查,灰色和未检查循环。
BS_AUTOCHECKBOX创建与复选框相同的按钮,但每次用户选中该复选框时,检查状态将自动在选中和未选中之间切换。
BS_AUTORADIOBUTTON创建与单选按钮相同的按钮,除非用户选择该按钮,Windows会自动将按钮的检查状态设置为检查状态,并自动将同一组中所有其他按钮的检查状态设置为未选中。
BS_CHECKBOX创建一个小的,空的复选框与文本。默认情况下,文本显示在复选框的右侧。要显示复选框左侧的文本,请将此标志与BS_LEFTTEXT样式(或等效的BS_RIGHTBUTTON样式)组合。
BS_DEFPUSHBUTTON创建一个按钮,其行为类似于BS_PUSHBUTTON样式按钮,但也有一个沉重的黑色边框。如果按钮在对话框中,用户可以通过按ENTER键选择按钮,即使按钮没有输入焦点。此样式对于使用户能够快速选择最可能的(默认)选项非常有用。
BS_GROUPBOX创建一个矩形,其中可以对其他控件进行分组。与此样式相关联的任何文本都将显示在矩形左上角。
BS_LEFTTEXT在单选按钮或复选框样式组合时,单选按钮左侧的文本或复选框。与BS_RIGHTBUTTON风格相同。
BS_OWNERDRAW创建一个所有者绘制的按钮。当按钮被创建时,所有者窗口接收到WM_MEASUREITEM消息,当按钮的视觉方面发生变化时,收到WM_DRAWITEM消息。不要将BS_OWNERDRAW样式与任何其他按钮样式相结合。
BS_PUSHBUTTON创建一个按钮,当用户选择按钮时,将按钮发送到所有者窗口WM_COMMAND.
BS_RADIOBUTTON用文字创建一个小圆。默认情况下,文字显示在圈子的右侧。要在圆圈左侧显示文本,请将此标志与BS_LEFTTEXT样式(或等效的BS_RIGHTBUTTON样式)相结合。使用单选按钮进行相关但互相排斥的组合。
BS_USERBUTTON已经过时,但与16位版本的Windows兼容。基于Win32的应用程序应该使用BS_OWNERDRAW。
BS_BITMAP指定按钮显示位图。
BS_BOTTOM将文本放在按钮矩形的底部。
BS_CENTER在按钮矩形中居中文字。
BS_ICON指定该按钮显示一个图标。
BS_LEFT左键对齐按钮矩形中的文本。但是,如果按钮是不具有BS_RIGHTBUTTON样式的复选框或单选按钮,则该文本在复选框或单选按钮的右侧保持对齐。
BS_MULTILINE如果文本字符串太长而不能在按钮矩形中的单行上,则将按钮文本包装到多行。
BS_NOTIFY启用按钮将BN_DBLCLK,BN_KILLFOCUS和BN_SETFOCUS通知消息发送到其父窗口。请注意,按钮发送BN_CLICKED通知消息,无论它是否具有此样式。
BS_PUSHLIKE按钮(如复选框,三态复选框或单选按钮)看起来像一个按钮。当按下或检查时,该按钮看起来会被抬起,当被按下或检查时,该按钮下沉。
BS_RIGHT右键对齐按钮矩形中的文本。但是,如果按钮是不具有BS_RIGHTBUTTON风格的复选框或单选按钮,则该文本在复选框或单选按钮的右侧右对齐。
BS_RIGHTBUTTON在按钮矩形的右侧放置单选按钮的圆圈或复选框的正方形。与BS_LEFTTEXT风格相同。
BS_TEXT指定按钮显示文本。
BS_TOP将文本放在按钮矩形的顶部。
BS_VCENTER在按钮矩形的中间(垂直)上放置文本。

也可以看看

WM_COMMAND, WM_DRAWITEM, WM_MEASUREITEM