- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
vc3第13章 滚动条类和其应用
面向对象与可视化程序设计 --Visual C++ 编程主讲教师:唐 龙教授 (计算机科学与技术系)黄维通博士 (计算机与信息管理中心)清 华 大 学2001年10月;第十三章滚动条类及其应用;内容提要;§13.1.滚动条类简介; ;滚动条类Cscrollbar是由CWnd类直接派生的。;2.CScrollBar类的创建与初始化;;§13.2.滚动条类的应用技术;[例13-1]带滚动条类的应用程序,其界面标题为Application of ScrollBar,滚动条的滚动范围设为0到20,当前值为 10,编辑框显示当前值。四个按键控制滚动条动作:
单击Up按钮,滚动块移到最上边,编辑框的数字变为0
单击Down按钮,滚动块移到最下边,编辑框的数字变为20;
单击Reset按钮,滚动块移到中间,编辑框的数字变为10
单击Exit按钮,退出应用程序。;单击Up,滚动块移
到最上边;应用程序的可视化编程;BOOL CSCROLLBARDlg::OnInitDialog()
{ CDialog::OnInitDialog();
ASSERT((IDM_ABOUTBOX 0xFFF0)==IDM_ABOUTBOX);
//加 “About...”菜单项。
ASSERT(IDM_ABOUTBOX 0xF000);//IDM_ABOUTBOX应在系统命令范围内
CMenu* pSysMenu = GetSystemMenu(FALSE);
if (pSysMenu != NULL)
{
CString strAboutMenu;
strAboutMenu.LoadString(IDS_ABOUTBOX);
if (!strAboutMenu.IsEmpty())
{ pSysMenu-AppendMenu(MF_SEPARATOR);
pSysMenu-AppendMenu(MF_STRING,IDM_ABOUTBOX,strAboutMenu);
}
};//为该对话框设置图标,当该应用程序的主窗口不是一个对话框时,程序将自动设置图标
SetIcon(m_hIcon, TRUE); // Set big icon
SetIcon(m_hIcon, FALSE); // Set small icon
m_Scrollbar.SetScrollRange(0,20);
m_Scrollbar.SetScrollPos(10);
char sPos[10];
itoa(m_Scrollbar.GetScrollPos(),sPos,10);//数值转成字符
m_Edit.SetSel(0,-1);
m_Edit.ReplaceSel(sPos);
UpdateData(FALSE);
return TRUE;
//return TRUE unless you set the focus to a control
};(3)给滚动条消息添加代码; case SB_LINEUP: //单击滚动条向上的箭头
iNowPos=m_Scrollbar.GetScrollPos();
iNowPos=iNowPos-1;
if(iNowPos0)
iNowPos=0;
m_Scrollbar.SetScrollPos(iNowPos);
itoa(m_Scrollbar.GetScrollPos(),sPos,10);
m_Edit.SetSel(0,-1);
m_Edit.ReplaceSel(sPos);
break;
case SB_PAGEDOWN: //单击滚动条下箭头???滚动块之间的区域
iNowPos=m_Scrollbar.GetScrollPos();
iNowPos=iNowPos+3;
if(iNowPos20) iNowPos=20;
m_Scrollbar.SetScrollPos(iNowPos);
itoa(m_Scrollbar.GetScrollPos(),sPos,10);
m_Edit.SetSel(0,-1);
m_Edit.ReplaceSel(sPos);
break; ; case SB_PAGEUP: //单击滚动条上箭头与滚动块之间的区域
iNowPos=m_Scrollbar.GetScrollPos();
iNowPos=iNowPos-3;
if(iNowPos0)iNowPos=0;
m_Scrollbar.SetScrollPos(iNowPos);
itoa
文档评论(0)