SubClass Dialog 上面的一个控件呀! 在MFC中除了SubClassDlgItem外还有SubclassWindow函数用来执行同样的功能。在与某个控件ID关联起来之后,所有该控件的消息将会有该类来响应。通常使用过程如下 补充一下,用一个窗口过程替换另一个过程的行为叫SUBCLASSING,这是WINDOWS意义上的派生子类,与面向对象语言的派生子类是完全不同的概念。SubClassDlgItem让对话框内指定子控制自己的窗口过程替代默认窗口过程,以拦截消息。 在VC 中,DoDataExchange函数中的DDX_Control之类的函数会调用SubClassDlgItem完成窗口子类化,这样控件自己就能处理消息了。 BOOL SubclassDlgItem( UINT nID, CWnd* pParent ); 综上所述,要在程序中使用派生控件,应该按下面两步进行: 1、在对话框模板中放置好基类控件. 例如,如果要在对话框中使用新设计的编辑框控件,应先在对话框模板中的合适位置放置一个普通的编辑框,然后,在OnInitDialog函数中按下面的方式调用SubclassDlgItem即可: BOOL CMyDialog::OnInitDialog() |
MFC之subclass
最新推荐文章于 2022-02-06 22:48:07 发布