用VC工具箱在dialog对话框中加入滚动条后怎么用?

如题,在不加resource的情况下我知道怎么设置和使用scrollbar但是添加dialog后再加入的scrollbar就不知道在程序里该怎么调用它.举个例子:有一整形... 如题,在不加resource的情况下我知道怎么设置和使用scrollbar

但是添加dialog后再加入的scrollbar就不知道在程序里该怎么调用它.

举个例子:有一整形变量x,初始化为0,在窗口中间显示.

窗口下方是水平的滚动条,范围0--100,数字可以随着滚动条的滑动而改变为相应数字.

请尽量给出代码,我会追加分数到200的,谢谢帮忙~
(有示例程序或介绍用法的网页也请指教)
展开
 我来答
保晏然2Q
2009-06-02 · TA获得超过1053个赞
知道小有建树答主
回答量:422
采纳率:0%
帮助的人:522万
展开全部
首先添加一个滚动条到对话框中(就是在Resources面板中用VC工具箱添加)
然后为该滚动条控件添加滚动条控制变量:CSliderCtrl m_SliderCtrl;
并且添加一个静态文本框控件来显示数字,也为该静态文本框控件添加控制变量:CStatic m_Show;

然后在对话框的OnInitDialog()函数中添加滚动条的初始代码:
BOOL CMyDlg::OnInitDialog()
{
CDialog::OnInitDialog();
CString str;
str.Format("%d",0);
m_Show.SetWindowText(str);

m_SliderCtrl.SetRange(0,100,false); //设置滚动条范围
m_SliderCtrl.SetPageSize(10); //单击滚动条非滑块部分滚动条值变化值为十
m_SliderCtrl.SetPos(0); //初始值为0;

// TODO: Add extra initialization here
return TRUE;
}

然后为滚动条添加NM_CUSTOMDRAW消息函数:
void CMyDlg::OnNMCustomdrawTrans(NMHDR *pNMHDR, LRESULT *pResult)
{
LPNMCUSTOMDRAW pNMCD = reinterpret_cast<LPNMCUSTOMDRAW>(pNMHDR);
// TODO: Add your control notification handler code here
CString str;
str.Format("%d",m_SliderCtrl.GetPos());
m_Show.SetWindowText(str);
*pResult = 0;
}
这样应该满足你的要求
我可是给出代码了啊 你说了要加分的 别忘了啊(嘿嘿 我这人天生就是脸皮厚)
圣鸾OJ
2015-10-04 · TA获得超过1629个赞
知道小有建树答主
回答量:1136
采纳率:96%
帮助的人:113万
展开全部
然后为该滚动条控件添加滚动条控制变量:CSliderCtrl m_SliderCtrl;
并且添加一个静态文本框控件来显示数字,也为该静态文本框控件添加控制变量:CStatic m_Show;

然后在对话框的OnInitDialog()函数中添加滚动条的初始代码:
BOOL CMyDlg::OnInitDialog()
{
CDialog::OnInitDialog();
CString str;
str.Format("%d",0);
m_Show.SetWindowText(str);

m_SliderCtrl.SetRange(0,100,false); //设置滚动条范围
m_SliderCtrl.SetPageSize(10); //单击滚动条非滑块部分滚动条值变化值为十
m_SliderCtrl.SetPos(0); //初始值为0;

// TODO: Add extra initialization here
return TRUE;
}

然后为滚动条添加NM_CUSTOMDRAW消息函数:
void CMyDlg::OnNMCustomdrawTrans(NMHDR *pNMHDR, LRESULT *pResult)
{
LPNMCUSTOMDRAW pNMCD = reinterpret_cast<LPNMCUSTOMDRAW>(pNMHDR);
// TODO: Add your control notification handler code here
CString str;
str.Format("%d",m_SliderCtrl.GetPos());
m_Show.SetWindowText(str);
*pResult = 0;
}
这样应该满足你的要求
我可是给出代码了啊 你说了要加分的 别忘了啊(嘿嘿 我这人天生就是脸皮厚)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
猫的哈
2009-06-02 · TA获得超过142个赞
知道小有建树答主
回答量:495
采纳率:0%
帮助的人:171万
展开全部
为新建立对话框建立类(右击-插入类)假定类名为CMyDialog,在你需要使用的地方
CMyDialog dlg;
dlg.domodal();
就可以了。别忘了include 头文件
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式