C++实验四总结报告.docx
精品名师归纳总结可编辑资料 - - - 欢迎下载精品名师归纳总结试验目的和要求试验十常用控件( 1)可编辑资料 - - - 欢迎下载精品名师归纳总结( 1)创建一个默认的对话框应用程序Ex_Ctrls,如图 2.1 所示。( 2)设计一个如图 2.2 所示的“课程信息”对话框。图 2.1 Ex_Ctrls对话框图 2.2“课程信息”对话框( 3)实现功能:单击图2.1 中的“课程信息”按钮,弹出“同学基本信息”对话框,单击“添加” 按钮,对话框内容显示在图2.1 中的列表框中。试验预备和说明( 1)具备学问:静态控件、按钮、编辑框、旋转按钮控件、列表框和组合框控件。( 2)创建本次试验工作文件夹“Visual C+程序 试验 试验 2”。试验内容和步骤1. 启动 Visual C+ 6.0打开运算机,启动Visual C+ 6.0系统。2. 创建一个默认的对话框应用程序Ex_Ctrls 挑选“文件” “新建” 菜单,在弹出的“新建” 对话框中挑选 “工程” 页面, 挑选 MFCAppWizard(exe ),在工程框中输入Ex_Ctrls ,并将工程文件夹定位到“Visual C+程序 试验 试验 2”。 单击“确定”按钮,在显现的Step 1 对话框中挑选“基本对话(框)”应用程序类型,单击“完成”按钮。 在对话框编辑器中,单击对话框工具栏上的切换网格按钮,显示对话框网格,将对话框标题改为“使用控件” 。 调整对话框的大小, 删除对话框中间的 “ TODO: 在这里设置对话掌握。 ”静态文本控件和 “确定”按钮控件,将“取消”按钮标题改为“退出”,并移至对话框的下方。 向对话框中添加组框(Group)控件,标题设为“添加” ,然后调整其大小和位置。 添加一个按钮,标题设为“课程信息”, ID 设为 IDC_BUTTON_COUR。SE 添加一个列表框,取其默认ID 号,去掉 Sort 风格属性。3. 添加并设计“课程信息”对话框 按 Ctrl+R快捷键,弹出“插入资源”对话框,在资源类型列表中挑选Dialog ,单击“新建” 按钮。可编辑资料 - - - 欢迎下载精品名师归纳总结将该对话框资源的ID 设为 IDD_COURS,E 标题设为“课程信息”,字体设为“宋体, 9 号”。将 OK和 Cancel 按钮的标题改为“添加”和“取消”。打开对话框网格,参看图2.2 的控件布局,为对话框添加如表2.1 所示的一些控件。表 2.1课程信息对话框添加的控件添加的控件ID 号标其 他 属 性题编辑框 课程号 IDC_EDIT_COURSENO默认编辑框 课程名称IDC_EDIT_COURSENAME默认组合框 所属专业IDC_COMBO_SPECIAL默认组合框 课程类型IDC_COMBO_TYPE默认编辑框 开课学期IDC_EDIT_OPEN默认可编辑资料 - - - 欢迎下载精品名师归纳总结旋转按钮IDC_SPIN1Auto buddy 、Set buddy integer、Right 对齐,其余默认可编辑资料 - - - 欢迎下载精品名师归纳总结编辑框 课时数 IDC_EDIT_COURSEHOURS默认编辑框 学分IDC_EDIT_CREDIT默认 右击添加的课程类型的组合框控件,从弹出的快捷菜单中挑选“属性”命令,将其属性对话框切换到 Data 页面, 直接输入内容, 输入一行后按 Ctrl+回车 键添加另一行。 同样对另一个组合框控件也进行修改。 结果如图 2.3 所示。图 2.3课程类型组合框内容输入 按 Ctrl+W 快捷键或双击对话框资源模板的空白处,为 IDD_COURS创E 建一个对话框 CCourseDlg 。 打开 ClassWizard的 Member Variables页面,看 Class name 是否是 CCourseDlg ,选中所需的控件 ID 号,双击鼠标。依次为表2.2 控件增加成员变量。表 2.2控件变量控件 ID 号变量类别变量类型变量名范畴和大小IDC_EDIT_COURSENOIDC_EDIT_COURSENAMEValueValueCStringCStringm_strNOm_strNameIDC_COMBO_SPECIALValueCStringm_strSpecialIDC_COMBO_SPECIALIDC_COMBO_TYPE IDC_EDIT_OPENControlValue ValueCComboBoxCString BYTEm_comboSpecialm_strType m_nOpenIDC_SPIN1IDC_EDIT_COURSEHOURSControlValueCSpinButtonCtrlintm_spinOpenm_nHoursIDC_EDIT_CREDITValuefloatm_fCredit可编辑资料 - - - 欢迎下载精品名师归纳总结4. 添加 CCourseDlg 类代码 用 MFC ClassWizard 为 CCourseDlg 类添加 WM_INITDIALOG消息映射,并添加以下初始化代码:BOOL CCourseDlg:OnInitDialogCDialog:OnInitDialog; m_spinOpen.SetRange 1, 8 ;m_nHours = 60;m_fCredit = 2.0;m_nOpen = 1; m_strType = "专修"m_strSpecial = "机械工程及其自动化"/有改动UpdateDataFALSE;return TRUE; / return TRUE unless you set the focus to a control 用 MFC ClassWizard 为按钮 IDOK添加 BN_CLICKED的消息映射,并增加以下代码:void CCourseDlg:OnOKUpdateData; m_strNO.TrimLeft;if m_strNO.IsEmptyMessageBox" 课程号不能为空! "return;m_strName.TrimLeft;if m_strName.IsEmptyMessageBox" 课程名称不能为空! "return;CDialog:OnOK;5. 添加 CEx_CtrlsDlg程序代码 按 Ctrl+W快捷键,打开MFC ClassWizard对话框,为列表框控件IDC_LIST1添加控件变量m_List ,类型为 CListBox 。 用 MFC ClassWizard 为按钮 IDC_BUTTON_COUR添SE加 BN_CLICKED消息映射,并添加以下代码:void CEx_CtrlsDlg:OnButtonCourseCCourseDlg dlg;if IDOK .= dlg.DoModal return;/清除列表框原先的显示内容whilem_List.GetCount.=0 m_List.DeleteString0; m_List.AddString "课 程 号: "+dlg.m_strNO; m_List.AddString "课程名称: "+dlg.m_strName; m_List.AddString "所属专业: "+dlg.m_strSpecial; m_List.AddString "课程类型: "+dlg.m_strType; CString str;str.Format"开课学期: %d", dlg.m_nOpen ;可编辑资料 - - - 欢迎下载精品名师归纳总结m_List.AddString str ;str.Format"课 时 数: %d", dlg.m_nHours ; m_List.AddString str ;str.Format"学分: %3.1f", dlg.m_fCredit;m_List.AddString str ; 在 Ex_CtrlsDlg.cpp文件的前面添加 CInputDlg的头文件包含:#include "Ex_CtrlsDlg.h"#include "CourseDlg.h" /在“工程” “ 设置”常规选项里,挑选使用MFC作为静态链接库 编译运行并测试。6. 写出试验报告分析上述运行结果以及摸索与练习,写出试验报告。摸索与练习( 1)为 CCourseDlg 类添加一个公有型CString成员变量 m_strOKText ,当通过 CCourseDlg 类对象将 m_strOKText 设为“修改” , CCourseDlg 对话框中的“添加”按钮标题变成“修改”,试编程实现。( 2)由于每学期的一门课程学分一般不超过6 个学分, 因此如将学分编辑框改为组合框,应如何修改和编程?试验十一 常用控件( 2)试验目的和要求( 1)设计一个如图 3.1 所示的“同学基本信息”对话框。( 2)在试验 2 的基础上, 实现功能: 在图 2.1 中的“课程信息” 按钮下方添加一个 “同学基本信息” 按钮,单击该按钮,弹出“同学基本信息”对话框,单击“添加” 按钮,同学基本信息显示在列表框中。( 3)在 CEx_CtrlsDlg对话框中添加一个滚动条和两个滑动条来调整对话框的背景颜色的3 个重量: R(红色重量) 、G(绿色重量)和 B(蓝色重量) ,结果如图 3.2 所示。图 3.1“同学基本信息”对话框图 3.2设置对话框背景颜色试验预备和说明可编辑资料 - - - 欢迎下载精品名师归纳总结( 1)具备学问:滚动条、进展条、滑动条、时间和日历控件。( 2)创建本次试验工作文件夹“Visual C+程序 试验 试验 3”。试验内容和步骤1. 在试验 3 的工作文件夹中复制Ex_Ctrls文件夹将本书试验 2 中的 Ex_Ctrls文件夹复制到试验3 的工作文件夹中。2. 启动 Visual C+ 6.0启动 Visual C+ 6.0系统。3. 创建并添加“同学基本信息”对话框 挑选“文件”“打开工作区”菜单,将“Visual C+程序 试验 试验 3Ex_Ctrls”文件夹中的 Ex_Ctrls项目打开。 添加一个新的对话框资源,将ID 号改为 IDD_INPUT,标题为“同学成果输入” ,将对话框字体改为“宋体, 9 号”。将 OK和 Cancel 按钮标题改为“确定”和“取消”。 参看图 3.1 ,向对话框添加如表3.1 所示的控件。 添加两个“单项按钮”并在第一个按钮“男”的属性常规选项勾选“组”m_bMale 。其次个按钮不用勾选和增加。,并对第一个按钮增加成员变量int型表 3.1同学基本信息对话框添加的控件添加的控件ID 号标 题其 他 属 性旋转按钮控件IDC_SPIN_S2编辑框IDC_EDIT_S3旋转按钮控件编辑框IDC_SPIN_S3IDC_SPECIALAuto buddy 、Set buddy integer齐 默认Auto bud0dy 、Set buddy integer对齐默认、Right 对、 Right 双击对话框模板空白处,为该对话框模板创建一个对话框类CInputDlg 。 在 MFCClassWizard的 MemberVariables页面中,确定 Class name中是否已挑选了 CInputDlg ,选中所需的控件 ID 号,双击鼠标或单击Add Variables按钮。依次为表 3.2 控件增加成员变量。控件 ID 号变 量 类 别表 3.2控件变量变 量 类 型变 量 名范畴和大小IDC_SPIN_S3IDC_SPECIALControlValueCspinButtonCtrlCStringm_spinScore3 调整对话框的大小,将“确定”和“取消”按钮移至对话框的下方,然后显示对话框网格。编辑框IDC_EDIT_NAME默认编辑框IDC_EDIT_NO默认编辑框IDC_EDIT_S1默认旋转按钮控件IDC_SPIN_S1Auto buddy 、Right 对齐编辑框IDC_EDIT_S2默认IDC_EDIT_NAMEValueCStringm_strName20IDC_EDIT_NOValueCStringm_strNo20IDC_EDIT_S1Valueintm_fScore10.0 100.0IDC_SPIN_S1ControlCSpinButtonCtrlm_spinScore1IDC_EDIT_S2Valueintm_fScore20.0 100.0IDC_SPIN_S2ControlCSpinButtonCtrlm_spinScore2IDC_EDIT_S3Valueintm_fScore30.0 100.0可编辑资料 - - - 欢迎下载精品名师归纳总结m_strSpecial 在 MFC ClassWizard 的 Messsage Maps 页面中,为 CInputDlg添加 WM_INITDIALOG消息映射,并添加以下代码:BOOL CInputDlg:OnInitDialogCDialog:OnInitDialog;m_spinScore1.SetRange 0, 100 ;/设置旋转按钮控件范畴m_spinScore2.SetRange 0, 100 ;m_spinScore3.SetRange 0, 100 ;return TRUE; / return TRUE unless you set the focus to a control 用 MFCClassWizard为 CInputDlg增加 IDC_SPIN_S1控件的 UDN_DELTAPO消S息映射, 并添加以下代码:void CInputDlg:OnDeltaposSpinS1NMHDR* pNMHDR, LRESUL*T pResultNM_UPDO*WpNNMUpDown = NM_UPDOW* NpNMHDR;UpdateDataTRUE;/将控件的内容储存到变量中m_fScore1 += floatpNMUpDown->iDelta* 0.5;/将m_fScore1 等定义为 int 型if m_fScore1<0 m_fScore1 = 0;if m_fScore1>100 m_fScore1 = 100;UpdateDataFALSE;/将变量的内容显示在控件中*pResult = 0; 打开 IDD_EX_CTRLS_DIALO对G 话框资源,在“课程信息”按钮下方添加一个“同学基本信息” 按钮,并将 ID 号设为 IDC_BUTTON_STUINF。O 用 MFCClassWizard为按钮 IDC_BUTTON_STUINF添O 加 BN_CLICKED消息映射, 并添加以下代码:void CEx_CtrlsDlg:OnButtonStuinfoCInputDlg dlg;if IDOK .= dlg.DoModal return; whilem_List.GetCount.=0m_List.DeleteString0; CString strSex"男"if dlg.m_bMale strSex = "女" m_List.AddString "姓名: "+dlg.m_strName; m_List.AddString "学号: "+dlg.m_strNo; m_List.AddString "性别: "+strSex;CString str;/修改了接下来这三条语句str.Format"诞生日期: %d-%d-%d", dlg.m_fScore1,dlg.m_fScore2,dlg.m_fScore3; m_List.AddString str ;m_List.AddString "所学专业: "+dlg.m_strSpecial;在 Ex_CtrlsDlg.cpp文件的前面添加 CStuInfoDlg类的头文件包含:可编辑资料 - - - 欢迎下载精品名师归纳总结#include "CourseDlg.h"#include "InputDlg.h"/在“工程”“ 设置”常规选项里,挑选使用MFC作为静态链接库编译运行并测试。结果如图3.3 所示。可编辑资料 - - - 欢迎下载精品名师归纳总结4. 转变对话框背景颜色图 3.3同学基本信息添加后的结果可编辑资料 - - - 欢迎下载精品名师归纳总结 将项目工作区窗口切换到ResourceView 页面,打开 IDD_EX_CTRLS_DIALOG对话框资源。 打开对话框网格,参看图3.2 的控件布局,为对话框添加如表3.3 所示的一些控件。表 3.3添加的控件添加的控件ID 号标题其 他 属性垂直滚动条滑动条 绿色IDC_SCROLLBAR_REDIDC_SLIDER_GREEN默认方位为 Vertical,其他默认滑动条 蓝色IDC_SLIDER_BLUE方位为 Vertical,其他默认 用 MFC ClassWizard 为表 3.4 控件添加成员变量。表 3.4控件变量控件 ID 号变 量 类 别变 量 类 型变 量 名范畴和大小IDC_SCROLLBAR_REDControlCScrollBarm_scrollRedIDC_SLIDER_GREENControlCSliderCtrlm_sliderGreenIDC_SLIDER_GREENValueintm_nGreenIDC_SLIDER_BLUEControlCSliderCtrlm_sliderBlueIDC_SLIDER_BLUEValueintm_nBlue 为 CEx_CtrlsDlg类添加两个成员变量,一个是int型 m_nRed,用来设置颜色R、G、B 中的红色重量,另一个是画刷CBrush 类对象 m_Brush,用来设置对话框背景所需要的画刷。方法:在 Ex_CtrlsDlg.h头文件内找到相应位置按下图添加。 在 CEx_CtrlsDlg:OnInitDialog函数中添加以下代码:可编辑资料 - - - 欢迎下载精品名师归纳总结BOOL CEx_CtrlsDlg:OnInitDialog。m_scrollRed.SetScrollRange0, 255;m_sliderBlue.SetRange0, 255;m_sliderGreen.SetRange0, 255;/设置颜色调剂范畴m_nBlue = m_nGreen = m_nRed = 192; /初始化对话框背景颜色UpdateData FALSE ;m_scrollRed.SetScrollPosm_nRed;return TRUE; / return TRUE unless you set the focus to a control 用 MFC ClassWizard 为 CEx_CtrlsDlg类映射 WM_VSCROL消L息,并添加以下代码:void CEx_CtrlsDlg:OnVScrollUINT nSBCode, UINT nPos, CScrollBar* pScrollBarint nID = pScrollBar->GetDlgCtrlID;/猎取对话框中控件 ID 号if nID = IDC_SCROLLBAR_RED /或是滚动条产生的水平滚动消息switchnSBCodecase SB_LINEUP:m_nRed-;/单击滚动条向上箭头break;case SB_LINEDOWN: m_nRed+;/单击滚动条向下箭头break;case SB_PAGEUP:m_nRed -= 10;break;case SB_PAGEDOWN:m_nRed += 10;break;case SB_THUMBTRACK:m_nRed = nPos;break;if m_nRed<0 m_nRed = 0;if m_nRed>255 m_nRed = 255; m_scrollRed.SetScrollPosm_nRed;Invalidate;/使对话框无效,强迫系统重绘对话框CDialog:OnVScrollnSBCode, nPos, pScrollBar; 用 MFC ClassWizard 为 CEx_CtrlsDlg类映射 WM_CTLCOLO消R息,并添加以下代码:HBRUSH CEx_CtrlsDlg:OnCtlColorCDC* pDC, CWnd* pWnd, UINT nCtlColor/HBRUSH hbr = CDialog:OnCtlColorpDC, pWnd, nCtlColor; UpdateDataTRUE;COLORREF color = RGBm_nRed, m_nGreen, m_nBlue;m_Brush.Detach;/使画刷和对象分别m_Brush.CreateSolidBrushcolor;/创建颜色画刷pDC->SetBkColor color ;/设置背景颜色return HBRUSHm_Brush;/返回画刷句柄,以便系统使此画刷绘制对话框可编辑资料 - - - 欢迎下载精品名师归纳总结 编译运行并测试。5. 写出试验报告分析上述运行结果以及摸索与练习,写出试验报告。摸索与练习( 1)如将掌握绿色和蓝色颜色重量的滑动条全部换成滚动条,就代码应如何修改?( 2)如将 CEx_CtrlsDlg对话框中的列表框换成静态文本,并用于显示信息,就应如何实现?可编辑资料 - - - 欢迎下载精品名师归纳总结试验目的和内容试验十二 菜单、工具栏和状态栏可编辑资料 - - - 欢迎下载精品名师归纳总结( 1)创建一个单文档应用程序Ex_SDI。在“查看”菜单下添加一个子菜单“鼠标位置”, ID 为ID_VIEW_MOUS,E当挑选该菜单命令后,鼠标当前的位置显示到状态栏上,同时该菜单项呈选中状态。 再次挑选该菜单命令, 状态栏不再显示当前鼠标位置,同时该菜单项的选中状态被去除。( 2)在工具栏上添加并设计一个工具按钮图标,使该按钮和 ID_VIEW_MOUS菜E 单命令联动, 并添加一个快捷键 Ctrl+M和该菜单命令联动。( 3)在窗口客户区中右击鼠标,弹出快捷菜单,显示主菜单“查看”中的菜单命令。结果如图5.1所示。图 5.1 Ex_SDI运行结果试验预备和说明( 1)具备学问:菜单、工具条和状态栏。( 2)创建本次试验工作文件夹“Visual C+程序 试验 试验 5”。试验内容和步骤1. 启动 Visual C+ 6.0打开运算机,启动Visual C+ 6.0系统。2. 用 MFC AppWizard( exe ) 创建一个默认的单文档应用程序Ex_SDI 挑选“文件”“新建”菜单,在弹出的“新建”对话框中挑选“工程”标签,在应用程序项可编辑资料 - - - 欢迎下载精品名师归纳总结目类型列表框中挑选MFC AppWizard( exe )的项目类型,将工程文件夹定位到“Visual C+程序试验 试验 5”,并在工程框中输入项目名Ex_SDI。 单击“确定”按钮,从显现的对话框中,挑选单个文档(Single Document, SDI)应用程序类型。 保留其他的默认选项,单击“完成”按钮显现一个对话框,显示出用户在步骤中作出的挑选,单击“确定”按钮,系统开头创建。3. 添加菜单 在项目工作区窗口中挑选ResourceView 页面,双击资源 Menu项中的 IDR_ MAINFRAM,E就菜单编辑器窗口显现在主界面的右边,相应的Ex_SDI 项目的菜单资源被显示出来。 单击“查看”菜单,就在该菜单的最终一项,Visual C+为用户留出了一个空位置,用来输入新的菜单项。 在菜单的空位置上双击鼠标左键,就显现它的属性对话框, 如图 5.2 所示, 在标题框中输入 “鼠标位置( &M) tCtrl+1”,在 ID 框输入该菜单项的资源标识:ID_VIEW_MOUS,E在提示框中输入“在状 态栏上显示当前鼠标位置n 鼠标位置”,其中 n 前一部分的文本是显示在状态栏上的,后一部分是联动的工具图标按钮的提示文本。图 5.2菜单项属性设置可编辑资料 - - - 欢迎下载精品名师归纳总结4. 添加并设计一个工具图标按钮 在项目工作区窗口的ResourceView页面中,双击Toolbar中的IDR_MAINFRAM,E打开工具栏资源。 单击工具栏最右端的空白按钮,在资源编辑器的按钮设计窗口中绘制一个“箭头” ,颜色为黑色,然后将其拖动到“帮忙”按钮的前面,并使该按钮的前后均有半个空格,结果如图5.3 所示。 双击刚才设计的工具按钮,在弹出的属性对话框中将其ID设为ID_VIEW_MOUS。E5. 菜单命令和工具按钮的更新图 5.3设计的工具按钮可编辑资料 - - - 欢迎下载精品名师归纳总结 为 CMainFrame 类添加一个 BOOL型的成员变量m_bIsMouse,在 CMainFrame 类构造函数中将m_bIsMouse 的初值设为 FALSE。方法:找到MainFrm.h 头文件,在下图位置添加相应代码。在MainFrm.cpp相应位置设初值。用 MFC ClassWizard在 CMainFrame 类 中 添 加 工具 按 钮 ID_VIEW_MOUSE的 COMMAND和可编辑资料 - - - 欢迎下载精品名师归纳总结UPDATE_COMMAND消_U息I 映射函数,并添加以下代码:void CMainFrame:OnViewMousem_bIsMouse = .m_bIsMouse;void CMainFrame:OnUpdateViewMouseCCmdUI * pCmdUIpCmdUI->SetCheckm_bIsMouse; 编译运行并测试。6. 设置快捷键 在项目工作区窗口的ResourceView 页面中,双击 Accelerator中的 IDR_ MAINFRAM,E 打开快捷键资源。 双击加速键列表的最下端的空行,弹出如图5.4 所示的 Accel Properities对话框,挑选菜单项 ID_VIEW_MOUS作E 为要联动的快捷键的ID 号,然后单击“下一键”按钮,并按下Ctrl+1作为此加速键的键值。图 5.4设置快捷键 编译运行并测试。7. 添加状态栏窗格并显示鼠标当前位置 打开 MainFrm.cpp 文件,将原先的 indicators数组修改如下:static UINT indicators =ID_SEPARATOR,/ status line indicator ID_SEPARATOR,ID_INDICATOR_CAPS, ID_INDICATOR_NUM, ID_INDICATOR_SCRL,; 用 MFCClassWizard在 CEx_SDIView 类中映射 WM_MOUSEM(OV移E动鼠标)消息,并在映射函数中添加以下代码:void CEx_SDIView:OnMouseMoveUINT nFlags, CPoint pointCMainFrame* pFrame=CMainFrame * AfxGetApp->m_pMainWnd;/获得主窗口指针CStatusBar * pStatus=&pFrame->m_wndStatusBar;/获得主窗口中的状态栏指针CString str;可编辑资料 - - - 欢迎下载精品名师归纳总结if pFrame->m_bIsMouse str.Format"%d,%d",point.x, point.y;else/格式化文本str.Empty;if pStatus/为空字符pStatus->SetPaneText1,str;CView:OnMouseMovenFlags, point;/更新其次个窗格的文本 将 MainFrm.h 文件中的受爱护变量m_wndStatusBar 变成公共变量。方法:修改MainFrm.h 文件中相应位置代码,如下图。 在 Ex_SDIView.cpp 文件的开头处增加以下语句:#include "Ex_SDIView.h" #include "MainFrm.h" 编译运行并测试。8 实现快捷菜单 用 MFC ClassWizard 在 CMainFrame 类添加 WM_CONTEXTME消N息U映射,并在映射函数添加以下代码:void CMainFrame:OnContextMenuCWnd * pWnd, CPoint pointCMenu* pSysMenu = GetMenu; pSysMenu->GetSubMenu2/获得程序菜单指针->TrackPopupMenuTPM_LEFTALIGN|TPM_RIGHTBUTTON, point.x, point.y, this; 编译运行并测试。9 写出试验报告分析上述运行结果以及摸索与练习,写出试验报告。摸索与练习如状态栏只有一个用户定义的指示器窗格(其ID 号为 ID_TEXT_PANE),应如何定义?如当用户在客户区双击鼠标时,在该窗格中显示“双击鼠标”字样,就应如何编程?可编辑资料 - - - 欢迎下载精品名师归纳总结void CAaDlg:OnHScrollUINT nSBCode, UINT nPos, CScrollBar* pScrollBarint nID = pScrollBar->GetDlgCtrlID;/猎取对话框中控件ID 号if nID = IDC_SCROLLBAR_RED /或是滚动条产生的水平滚动消息switchnSBCodecase SB_LINEUP: m_nRed-;/单击滚动条向上箭头break;case SB_LINEDOWN:m_nRed+;/单击滚动条向下箭头break;