_016_数字调节控件

========================================


先添加一个编辑框

再添加数字调节控件(旋转控件)


现在需要实现这个功能


可以通过设置属性(确保编辑框是先添加的)


这样就是合在一起了,但是点击上下箭头,并没有数值,所以还需要


还有一个附加的功能,是否循环,就是点到1000,再点一下,就变成0了这种



我们在OnInit初始化函数里添加如下测试代码

	CSpinButtonCtrl *csc = (CSpinButtonCtrl*)(this->GetDlgItem(IDC_SPIN1));
	CEdit *ce1 = (CEdit *)(this->GetDlgItem(IDC_EDIT_span_num));

	//手动绑定编辑框控件
	csc->SetBuddy(ce1);

	//设置范围
	csc->SetRange(0, 1000);

	//设置当前位置
	csc->SetPos(100);

	UDACCEL a[2];
	a[0].nSec = 1;  //1秒钟,增加10
	a[0].nInc = 10;

	a[1].nSec = 3;  //一直按住过了3秒,(前3秒都是曾经10),现在每隔3秒增加20
	a[1].nInc = 20;

	//设置调节时间的函数,就是鼠标一直点住箭头,那么随着时间的增加,编辑框里的数值增加越快
	//第一个参数是结构体的数量,我们设置了2个,所以填2
	csc->SetAccel(2,a);


CSpinButtonCtrl的文档

https://msdn.microsoft.com/zh-cn/library/sfac27cz.aspx


UDACCEL结构体文档

https://docs.microsoft.com/zh-cn/windows/desktop/api/commctrl/ns-commctrl-_udaccel


=




















猜你喜欢

转载自blog.csdn.net/yzj17025693/article/details/80875388