文档详情

对话框和控件部分..doc

发布:2016-12-31约字共5页下载文档
文本预览下载声明
对话框和控件部分: 1.模式和非模式对话框的区别: “模式对话框”是指当对话框被弹出,用户必须在对话框中作出相应的操作,在退出对话框之前,对话框所在的应用程序不能继续执行。“无模式对话框”是指当对话框被弹出后,一直保留在屏幕上,用户可继续在对话框所在的应用程序中进行其它操作。 模式对话框的调用采用DoModal()方法创建,非模式创建采用Creat()方法。 模式对话框是采用EndDialog()关闭,非模式对话框采用DestroyWindow()方法关闭。 2.滚动条 CScrollbar m_Scrollbar; 在设置滚动条控件时,要通过如下方法设置其范围 CScrollBar::SetScrollRange() 例如,设置滚动范围为-100到100的垂直滚动条 m_Scrollbar.SetScrollRange(-100,100); 通过SetScrollPos()设置滚动块当前位置 例如,滚动快的位置在-100到100的中间,即为0的位置 m_Scrollbar.SetScrollPos(0); 通过GetScrollPos()得到当前滑块位置的值是数值型 int i= m_Scrollbar.GetScrollPos() 滚动条5个消息: SB_THUMBTRACK: //拖动滑块 SB_LINEDOWN: //单击滚动条向下的箭头 SB_LINEUP: //单击滚动条向上的箭头 SB_PAGEDOWN: //单击箭头与滚块之间的区域 SB_PAGEUP: //单击箭头与滚块之间的区域 3.滚动条实例 BOOL CMy9_2Dlg::OnInitDialog() { CDialog::OnInitDialog(); …… // TODO: Add extra initialization here 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; } void CMy9_2Dlg::OnVScroll(厖) { // TODO: Add your message handler code here char sPos[10]; int iNowPos; if(pScrollBar==m_Scrollbar){ switch(nSBCode) { case SB_THUMBTRACK: //o拖动滑块 m_Scrollbar.SetScrollPos(nPos); itoa(nPos,sPos,10); m_Edit.SetSel(0,-1); m_Edit.ReplaceSel(sPos); break; case SB_LINEDOWN: //单击滚动条向下的箭头 iNowPos=m_Scrollbar.GetScrollPos(); iNowPos=iNowPos+1; 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_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);
显示全部
相似文档