downcast?可以在不确定的时候传父类的指针,在转化啊
解决方案 »
- VS2008数据库编程,新建类时,怎么基础类里没有CRecordSet
- 新年第一贴(哈哈)
- 全部家底请教算法
- 【vc高手请进】mfc动态链接链接的是什么?静态链接链接的是什么?
- 我头都被搞大了,编写DLL的问题
- GetDIBits得到了一个指向数据区的指针,请问有没有函数专门从中读取象素值?
- 如何在视图中使用splitter?
- 在dll的导出函数中创建一个工作者线程,调试发现线程函数根本就没有执行。
- 如何将窗口变成一个置顶的小图标?
- VC6.0可不可以编译出16位的应用程序?
- 有那位高手知道CView:OnFilePrint()内部是怎样实现的,就是内部的调用顺序?
- 各位老大,麻烦帮忙看一下,很简单喔!
能不能讲得详细一些
calss a{
int i;
int GetI(){return i;}
};
class B:public a{
int ii;
int GetII(){return ii;}
};
here is a function
Fun(a aa);
u can use Fun(b bb);
在vc中类都是CObject的子类,着样你就可以把你的类传给它了
CWnd::SubclassWindow
BOOL SubclassWindow( HWND hWnd );
我的概念也不是很清楚,但超类及子类似乎有一个函数setclasslong之类的记不太清楚了
似乎有点象您说的
参数nID是控件的ID,pParent是指向父窗口的指针.若连接成功则函数返回TRUE,否则返回FALSE.综上所述,要在程序中使用派生控件,应该按下面两步进行:
1. 在对话框模板中放置好基类控件.
2. 在对话框类中嵌入派生控件类的对象.
3. 在OnInitDialog中调用SubclassDlgItem将派生类的控件对象与对话框中的基类控件相连接,则这个基类控件变成了派生控件.
例如,如果要在对话框中使用新设计的编辑框控件,应先在对话框模板中的合适位置放置一个普通的编辑框,然后,在OnInitDialog函数中按下面的方式调用SubclassDlgItem即可:BOOL CMyDialog::OnInitDialog()
{
CDialog::OnInitDialog();
m_MyEdit.SubclassDlgItem(IDC_MYEDIT, this);
return TRUE;
的原理应该也差不多。在MFC里就好象用另外一个类来处理消息流程了,是不是这个概念?