如何一个创建三态下压按钮 

如何一个创建三态下压按钮 

ID:22202812

大小:85.50 KB

页数:8页

时间:2018-10-27

如何一个创建三态下压按钮 _第1页
如何一个创建三态下压按钮 _第2页
如何一个创建三态下压按钮 _第3页
如何一个创建三态下压按钮 _第4页
如何一个创建三态下压按钮 _第5页
资源描述:

《如何一个创建三态下压按钮 》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、如何一个创建三态下压按钮可以使用新的BS_PUSHBUTTON风格位和检测框以及按钮来创建一个三态下压按钮。这很容易,只需将检测框和按钮拖拉到对话屮并指定属性Push—like即可。不用任何附加程序就可以成为三态下压按钮。42、如何动态创建控件分配一个控件对象的实例并调用其Create成员函数。开发者最容易忽略两件事:忘记指定WS_VISBLE标签和在桟中分配控件对象。下例动态地创建一个下压按钮控件://Inclassdeclaration(.11file).private:CButton氺in_pButton;//Tnclassimplementation(.cppfile).m_pBu

2、tton=ncwCButton;ASSERT_VALiD(m_pButton);m_pButton—>Create(_T("ButtonTitle"),WS_CHILDIWS_VISIBLEIBS_PUSHBUTTON.Crcct(0,0,100,24),this,IDCJ1YBUTT0N)43、如何限制编辑框中的准许字符如果用户在编辑控件中只允许接收数字,可以使用一个标准的编辑控件并指定新的创建标志ES_NUMBERS,它是Windows95新増加的标志,该标志限制编辑控件只按收数字字符。如果用户需要复杂的编辑控件,可以使用Microsoft的屏蔽编辑控件,它是一个很有用的OLE定制控件

3、。如果希望不使用OLE定制控件自己处理字符,可以派生一个CEdit类并处理WM_CHAR消息,然后从编辑控件中过滤出特定的字符。首先,使用ClassWizard建立一个CEdit的派生类,其次,在对话类中指定一个成员变量将编辑控件分类在Onlnitdialog屮调用CWnd::SubclassDlgltem.//Inyourdialogclassdeclaration(.Hfile)private:CMyRditm_wndEdit;//Instanceofyourneweditcontrol.//Inyoudialogclassimplementation(.CPPfile)BOOLCSa

4、mpleDialog::OnlnitDialog(){•e•//Subclasstheeditlontrod.mwndEdit.SubclassDlgltem(IDCEDIT,this);}使用ClassWizard处理WM_CHAR消息,计算nChar参量并决定所执行的操作,用户可以确定是否修改、传送字符。下例说明了如何显示字母字符,如果字符是字母字符,则调用CWnd;OnChar,否则不调用OnChar.//Onlydisplayalphabeticdharacters.voidCMyEdit::OnChar(UINTnChar,UINTnRepCnt,UITNnFlags){//De

5、termineifnCharisanalphabcticcharactcr.if(::IsCharAlpha((TCHAR)nChar))CEdit::OnChar(nChar,nRepCnt,nFlags);}如果要修改字符,则不能仅仅简早地用修改过的nChar调用CEdit::OnChar,然后CEdit::OnChar调用CWnd::Default获取原来的wParam和1Param的值,这样是不行的。要修改一个字符,需要首先修改nChar,然后用修改过的nChar调用CWnd::DefWindowProCo下例说明了如何将字符转变为大写://Makeallcharactersupp

6、ercasevoidCMyEdit::0nChar(UINTnChar,UINTnRepCnt,UINTnFlags){//Makesurecharacterisuppercase.if(::IsCharAlpha(.(TCI1AR)nChar)nChar=::CharUpper(nChar);//BypassdefaultOnCharprocessinganddirectlycall//defaultwindowproc.DefWindProc⑽一CHAR,nChar,MAKELPARAM(nRepCnt,nFlags));}44、如何改变控件的颜色有两种方法。其一,可以在父类中指定控件

7、的颜色,或者利用MFC4.0新的消息反射在控件类中指定颜色。当控件需要重新着色时,工作框调用父窗口(通常是对话框)的CWnd::OnCrtlColor,可以在父窗U类中重置该函数并指定控件的新的绘画属性。例如,下述代码将对话中的所有编辑控件文本颜色改为红色:HBRUSHCAboutDig::0nCtlColor(CDC*pDCM,CWnd*pWnd,UINTnCt1Color)HBRUSHhbr=CDialog::OnC

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。