Windows的按键

在 BTNLOOK 中显示的前两个按钮是「压入」按钮。按钮是一个矩形,包括 了 CreateWindow 呼叫中视窗文字参数所指定的文字。该矩形占用了在 CreateWindow 或者 MoveWindow 呼叫中给出的全部高度和宽度,而文字在矩形的 中心。 按键控制项主要用来触发一个立即回应的动作,而不保留任何形式的开/关 指示。两种型态的按钮控制项有两种视窗样式,分别叫做

BS_PUSHBUTTON 和 BS_DEFPUSHBUTTON,

BS_DEFPUSHBUTTON 中的「DEF」代表「内定」。当用来设计 对话方块时BS_PUSHBUTTON 控制项和 BS_DEFPUSHBUTTON 控制项的作用不同。 但是当用作子视窗控制项时,两种型态的按钮作用相同,尽管 BS_DEFPUSHBUTTON 的边框要粗一些。 当按钮的高度为文字字元高度的 7/4 倍时,按钮的外观看起来最好,其中 文字字元由 BTNLOOK 使用;而按钮的宽度至少调节到文字的宽度再加上两个字 元的宽度。 当滑鼠游标在按钮中时,按下滑鼠按键将使按钮用三维阴影重画自己,就 好像真的被按下一样。放开滑鼠按键时,就恢复按钮的原貌,并向父视窗发送 一个 WM_COMMAND 讯息和 BN_CLICKED 通知码。与其他按钮型态相似,当按钮拥 有输入焦点时,在文字的周围就有虚线,按下及释放 Spacebar 键与按下及释放 滑鼠按键具有相同的效果。 您可以通过给视窗发送 BM_SETSTATE 讯息来模拟按钮闪动。以下的操作将 导致按钮被按下:

SendMessage (hwndButton, BM_SETSTATE, 1, 0) ;

下面的呼叫使按钮恢复正常: SendMessage (hwndButton, BM_SETSTATE, 0, 0) ;

hwndButton 视窗代号是从 CreateWindow 呼叫传回的值。

 您也可以向按键发送 BM_GETSTATE 讯息,子视窗控制项传回按钮目前的状 态:如果按钮被按下,则传回 TRUE;如果按钮处於正常状态,则传回 FALSE。 但是,绝大多数应用并不需要这一讯息。因为按钮不保留任何开/关资讯,所以 BM_SETCHECK 讯息和 BM_GETCHECK 讯息不会被用到。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值