旋转按钮(Spin Button)有时也被称为上下控件(Up-Down Control).
转按钮控件的风格
控件风格 |
含义 |
UDS_HORZ |
指定一个水平旋转按钮.若不指定该风格则创建一个垂直的旋转按钮. |
UDS_WRAP |
当旋转按钮增大到超过最大值时,自动重置为最小值,当减小至低于最小值时,自动重置为最大值. |
UDS_ARROWKEYS |
当用户按下向下或向上箭头键时,旋转按钮值递增或递减. |
UDS_SETBUDDYINT |
旋转按钮将自动更新伙伴控件中显示的数值,如果伙伴控件能接受输入,则可在伙伴控件中输入新的旋转按钮值. |
UDS_NOTHOUSANDS |
伙伴控件中显示的数值每隔三位没有千位分隔符. |
UDS_AUTOBUDDY |
自动使旋转按钮拥有一个伙伴控件. |
UDS_ALIGNRIGHT |
旋转按钮在伙伴控件的右侧. |
UDS_ALIGNLEFT |
旋转按钮在伙伴控件的左侧. |
创建一个有伙伴的垂直旋转按钮控件,一般应指定的风格为WS_CHILD|WS_VISIBLE|UDS_AUTOBUDDY| UDS_SETBUDDYINT.
在对话框模板中,可以方便地为旋转按钮指定一个伙伴控件,步骤如下:
1:首先,应该在旋转按钮控件的属性对话框中选择Auto buddy和Set buddy integer属性,并在Alignment栏中选择Left或Right。这样在确定了伙伴之后,不论在资源编辑器中,旋转按钮和它的伙伴距离多远,在显示时旋转按钮控件都将位于伙伴(如编辑框)的内部的左侧或内部的右侧。
2:伙伴的选择是以tab顺序为参照的,伙伴控件的tab顺序值必须比旋转按钮的tab顺序值小1。
提示:用ClassWizard无法为Win32新控件创建数据变量(只能创建控件变量).但我们可以为旋转按钮的伙伴控件(如编辑框)创建一个数据变量,该变量可看成是旋转按钮的数据变量。
通过CSpinButtonCtrl的成员函数,可以对旋转按钮进行查询和设置:
1:用GetRange和SetRange来查询和设置旋转按钮值的范围,缺省时值的范围是1-100。
2:用GetBase和SetBase来查询和设置旋转按钮值的计数制,即是十进制、十六进制等。
3:用GetBuddy和SetBuddy来查询和设置旋转按钮的伙伴.上面已讲了在对话框模板中设置伙伴控件的方法,如果是用Create手工创建旋转按钮,则可以用SetBuddy来设置伙伴.函数的声明为
CWnd* GetBuddy( ) const;
CWnd* SetBuddy( CWnd* pWndBuddy );
参数pWndBuddy是指向伙伴控件对象的CWnd型指针。
4:可以用GetAccel和SetAccel来查询和设置旋转按钮的加速值。
内容详见:《VC编程手册6.2节