新建一个对话框程序,添加一个Slider Control控件和静态文本控件如下:
滑块控件:IDC_SLIDER1,关联控件变量:m_slider
设置滑块控件属性来显示刻度,Auto Ticks:True;Tick Marks:True
静态文本控件:IDC_STATIC_VALUE,关联控件变量m_staticValue
在OnInitDialog()中初始化滑块控件:
m_slider.SetRange(1,50); //设置范围
m_slider.SetPos(2); //设置初始位置
CString str;
str.Format("%d",m_slider.GetPos());
m_staticValue.SetWindowText(str);
m_slider.SetPageSize(3); //设置在控件上单击时滑块移动步长
m_slider.SetTicFreq(5); //设置刻度间隔
添加消息响应NM_CUSTOMDRAW,以便用户在移动滑块时做出反应
void CMoveTestDlg::OnCustomdrawSlider1(NMHDR *pNMHDR, LRESULT *pResult)
{
LPNMCUSTOMDRAW pNMCD = reinterpret_cast
// TODO: 在此添加控件通知处理程序代码
CString str;
str.Format("%d",m_slider.GetPos()); //获取滑块位置值
m_staticValue.SetWindowTextA(str);
*pResult = 0;
}
若想要通过键盘左右方向键控制滑块移动,则重写PreTranslateMessage虚函数
BOOL CMoveTestDlg::PreTranslateMessage(MSG* pMsg)
{
if( pMsg->message == WM_KEYDOWN ) //如果有键按下
{
int nValue=m_slider.GetPos();
CString str;
//判断具体键
switch( pMsg->wParam )
{
case VK_LEFT://按下左键
nValue-=1; //值减小1
m_slider.SetPos(nValue); //移动滑块
str.Format("%d",nValue);
m_staticValue.SetWindowTextA(str); //设置静态文本
break;
case VK_RIGHT://按下右键
nValue+=1; //值增大1
m_slider.SetPos(nValue); //移动滑块
str.Format("%d",nValue);
m_staticValue.SetWindowTextA(str); //设置静态文本
break;
default:
break;
}
}
return CDialogEx::PreTranslateMessage(pMsg);
}
二、html 滑动块滑动同时实时显示数字你最好使用滑块插件了。建议你看下这篇文章,能很好地解决你的问题-可以滑动滑块时实时显示数字。网页链接 是基于bootstrap里的一个slider插件,很好用。这篇有详细介绍,并且最下方有demo演示以及详细的API地址。
$('#ex1').slider({formatter: function(value) {return 'Current value: ' + value;}});// Without JQueryvar slider = new Slider('#ex1', {formatter: function(value) {return 'Current value: ' + value;}});
三、asp.net怎么操作html的控件其实asp里的request.form在.net里也是可以使用的,而且用法一样。在page_load中获取值就可以了。
四、USART HMI中滑块控件和数字控件怎么一起使用有两个作用。一个是为了测试当前的波特率,有的设备波特率是自适应的;二是通信协议自定义的,为了通信的可靠性而定义的头码。
本文来自用户投稿,不代表POS机办理网立场,如若转载,请注明出处:https://tlx668.com/poszx/6471.html
发表回复
评论列表(0条)