消息对话框,直接用MessageBox("么么哒");就可以弹出来消息对话框,我怀疑其原理是自动生成类和对象,与我们平时创建对话框资源和生成对话框类进而实现对象的区别只是在于“自动”。
对话框:
属性:属性页CPropertyPage,属性表CPropertySheet
消息对话框CPropertySheet(鸡啄米没有提,但是按照MSDN上的信息,这是一个CPropertySheet类,更确定了其只是类生成的简化)
文件CFileDialog
字体CFontDialog
颜色CColorDialog
IDOK:有时候是作为一个“OK”按键的ID使用,有时候是作为DoModal()函数的返回值。不同对话框下的控件ID是可以相同的。
字体对话框类在构造时,会用到一个LOGFONT结构体,这个结构体包含了字体的大部分信息。在构造完成之后,会产生一个名为m_cf的CHOOSEFONT结构体类型的类成员变量(这是在CFontDialog类中生命的成员变量),该结构体中有一个成员叫做lpLogFont(这是MFC库定义的),这个成员其实就是指向LOGFONT结构体的指针。所以,在实现对象后,要想查看字体属性,可以用“ 类名.m_cf.lpLogFont->具体信息(如lfFaceName); ”来获取。
对话框:
属性:属性页CPropertyPage,属性表CPropertySheet
消息对话框CPropertySheet(鸡啄米没有提,但是按照MSDN上的信息,这是一个CPropertySheet类,更确定了其只是类生成的简化)
文件CFileDialog
字体CFontDialog
颜色CColorDialog
IDOK:有时候是作为一个“OK”按键的ID使用,有时候是作为DoModal()函数的返回值。不同对话框下的控件ID是可以相同的。
字体对话框类在构造时,会用到一个LOGFONT结构体,这个结构体包含了字体的大部分信息。在构造完成之后,会产生一个名为m_cf的CHOOSEFONT结构体类型的类成员变量(这是在CFontDialog类中生命的成员变量),该结构体中有一个成员叫做lpLogFont(这是MFC库定义的),这个成员其实就是指向LOGFONT结构体的指针。所以,在实现对象后,要想查看字体属性,可以用“ 类名.m_cf.lpLogFont->具体信息(如lfFaceName); ”来获取。
鸡啄米的讲解打破了面向对象的思想,不知道是鸡啄米的问题、C++的问题还是我对面向对象思想的理解问题。
有对象名和变量名不就可以了吗,为什么还要有ID