高手救救小弟吧 :(~ 这个问题已经搞了2~3天了 。。。。。。。。。。。。
eww 2006-09-22 05:54:56
小弟初学VC,请CSDN的高手多指教,这个问题已经搞了2~3天了:(,网上也没有什么教程,现在实在搞不定了求助于CSDN的大虾们。
目的:小弟想在CAboutDlg 中new 一个AdvFont后,AdvFont会在自已上画一个文字出来,我再把AdvFont放到CAboutDlg 中,这样文字在CAboutDlg 中就显示出来了,其实就是一个像cstatic这样的组件. 但是现在不行啊
现在做了一个类
class AdvFont:public CWind{}
在这个类中有实现了一个Create方法
BOOL AdvFont::Create(CWnd *pwnd){
return CWnd::Create(NULL,"YYYY",WS_VISIBLE,CRect(100,100,100,100),pwnd,0,NULL);
}
我用软件生成了一个这样的类class CAboutDlg : public CDialog(就是用visual生成的)
这个类一运行会出现一个对dialog,
我在CAboutDlg 中的OnPaint 函数中写上入下代码:
AdvFont* adv=new AdvFont();
adv->Create(this);
//adv->ShowWindow(SW_HIDE);
//adv->UpdateWindow();
adv->SetTimer(1,2000,0);
问题:
现在AdvFont中的OnCreate()和OnTimer(UINT nIDEvent)会被自动触发
但是OnPaint却没有被触发,不知道为什么???????
现了怎么在AdvFont中画出字来用getDC().TextOut()不行啊。 在CAboutDlg 都可以直接画