Visual C++.NET技术内幕(第6版)学习笔记2

ex06e:

1.第一次编译不成功因为没有设置按钮的Owner Draw属性为真

2.CAboutDlg类的声明和实现在ex06.cpp文件中

关于那个类在哪声明和实现,只要打开类视图双击就知道了,不用记住,没准哪天微软就把声明和实现换地方了也未可知。

3.位图的名字标示加引号,表示用名字标示资源而不是ID;

ex07a:

1.勘误

P128页把m_bCat改为m_nCat

P131页m_nLang,同样与前面定义的类型不一致,改过来;

 

2.一般来说模态对话框都是调用 CDialog::EndDialog(int);结束的 模板生成的OnOK();和OnCancel();分别对应EndDialog(IDOK);和EndDialog(IDCANCEL); 以下是一般对话框的结束码定义,对应的含义看其英文就行了。 

#define IDOK 1 

#define IDCANCEL 2 

#define IDABORT 3 

#define IDRETRY 4 

#define IDIGNORE 5 

#define IDYES 6 

#define IDNO 7 

#if(WINVER >= 0x0400) #define IDCLOSE 8 #define IDHELP 9 #endif /* WINVER >= 0x0400 */ 你也可以自己定义结束码,然后由调用对话框的函数去判断结果。 

 

3.程序运行,点击对话框没有赋初值,对比源代码发现Cex07aDialog::OnInitDialog()里面,默认return TRUE;

改为 return CDialog::OnInitDialog();好了

你可能感兴趣的:(C++,.net,微软)