第9章_Windows 标准控件在可视化编程中的应用.ppt
上传人:qw****27 上传时间:2024-09-12 格式:PPT 页数:131 大小:1.4MB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

第9章_Windows 标准控件在可视化编程中的应用.ppt

第9章_Windows标准控件在可视化编程中的应用.ppt

预览

免费试读已结束,剩余 121 页请下载文档后查看

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第9章Windows标准控件在可视化编程中的应用控件是Windows图形用户界面的主要组成部分之一,用户通过操作控件对象完成与应用程序之间的交互。控件的使用集中体现了Windows系统面向对象的特点9.1概述9.2按钮控件及其应用9.2.1按钮控件的创建过程按钮控件消息:ON_BN_CLICKEDON_BN_DBLCLICKEDON_COMMANDGetCheck()SetCheck()GetBitmap()SetBitmap()GetButtonStyle()SetButtonStyle()GetCursor()SetCursor()GetIcon()SetIcon()GetState()SetState()MFC还提供了一个CBitmapButton的类,允许用户以图标的方式显示按钮,它是在CButtong下派生的9.2.2按钮控件示例IDC_BUTTON1IDC_BUTTON2IDC_RADIO1IDC_RADIO2IDC_CHECK1IDC_CHECK23.添加成员变量并添加消息响应函数voidCMy9_1Dlg::OnButton1(){m_btn1.SetWindowText(“你已按下了按钮!”);}voidCMy9_1Dlg::OnButton2(){m_btn2.SetWindowText(“按钮已被按下!”);}voidCMy9_1Dlg::OnCheck1(){if(m_chk1.GetCheck()>0)m_chk1.SetCheck(0);elsem_chk1.SetCheck(1);}voidCMy9_1Dlg::OnRadio1(){m_rad1.SetCheck(1);}9.3滚动条控件9.3.1滚动条类的结构及其方法常用滚动条动作标识及其说明SB_TOP/SB_BOTTOM:滚动到滚动条最顶/底端SB_LINEUP/SB_LINEDOWN:向上/下滚动一行SB_LEFT/SB_RIGHT:滚动到左/右边SB_LINELEFT/SB_LINERIGHT:向左/右滚动一行SB_PAGEUP/SB_PAGEDOWN:向上/下滚动一页SB_PAGELEFT/SB_PAGERIGHT:向左/右滚动一页SB_THUMBPOSITION:滚动框移动到新位置SB_THUMBTRACK:滚动框被拖动SB_ENDSCROLL:滚动到最终位置9.3.2创建与初始化滚动条类在设置滚动条控件时,要通过如下方法设置其范围CScrollBar::SetScrollRange()例如,设置滚动范围为-100到100的垂直滚动条pMyScroll->SetScrollRange(SB_VERT,-100,100);9.3.3滚动条类编程实例(1)应用程序的可视化编程部分(2)应用程序的代码编程部分BOOLCMy9_2Dlg::OnInitDialog(){CDialog::OnInitDialog();……//TODO:Addextrainitializationherem_Scrollbar.SetScrollRange(0,20);m_Scrollbar.SetScrollPos(10);charsPos[10];itoa(m_Scrollbar.GetScrollPos(),sPos,10);m_Edit.SetSel(0,-1);m_Edit.ReplaceSel(sPos);UpdateData(FALSE);returnTRUE;}(3)给滚动条消息添加代码voidCMy9_2Dlg::OnVScroll(……){//TODO:AddyourmessagehandlercodeherecharsPos[10];intiNowPos;switch(nSBCode){if(pScrollBar==&m_Scrollbar){caseSB_THUMBTRACK://拖动滑块m_Scrollbar.SetScrollPos(nPos);itoa(nPos,sPos,10);m_Edit.SetSel(0,-1);m_Edit.ReplaceSel(sPos);caseSB_LINEDOWN://单击滚动条向下的箭头iNowPos=m_Scrollbar.GetScrollPos();iNowPos=iNowPos+1;if(iNowPos>20)iNowPos=20;m_Scrollbar.SetScrollPos(iNowPos);itoa(m_Scrollbar.GetScrollPos(),sPos