我做了一个类似于FlashGet的悬浮窗,建立的时候是这样的:
CSuspend *suDlg;
suDlg=new CSuspend;
suDlg->Create(IDD_SUSPEND,GetDesktopWindow());
suDlg->SetWindowPos(&wndTopMost,Suspendx,Suspendy,0,0,SWP_NOSIZE);
suDlg->ShowWindow(SW_SHOW);其中CSuspend是这个悬浮框的类名CToolTipCtrl *DlgToolTip;
同时:
BOOL CSuspend::OnInitDialog()
{
CDialog::OnInitDialog();
DlgToolTip=new CToolTipCtrl;
DlgToolTip->Create(this,TTS_ALWAYSTIP);
DlgToolTip->AddTool(GetDlgItem(IDC_STATIC_PIC),"JEfffris");
DlgToolTip->Activate(TRUE);
return TRUE; // 除非设置了控件的焦点,否则返回 TRUE
}并且
BOOL CSuspend::PreTranslateMessage(MSG* pMsg)
{
if (DlgToolTip!= NULL)
DlgToolTip->RelayEvent(pMsg);
return CDialog::PreTranslateMessage(pMsg);
}但现在仍然不能显示,是什么原因?是不是由于这个对话框的父类是系统桌面?
该怎么解决?立马结算,在线等~~~
CSuspend *suDlg;
suDlg=new CSuspend;
suDlg->Create(IDD_SUSPEND,GetDesktopWindow());
suDlg->SetWindowPos(&wndTopMost,Suspendx,Suspendy,0,0,SWP_NOSIZE);
suDlg->ShowWindow(SW_SHOW);其中CSuspend是这个悬浮框的类名CToolTipCtrl *DlgToolTip;
同时:
BOOL CSuspend::OnInitDialog()
{
CDialog::OnInitDialog();
DlgToolTip=new CToolTipCtrl;
DlgToolTip->Create(this,TTS_ALWAYSTIP);
DlgToolTip->AddTool(GetDlgItem(IDC_STATIC_PIC),"JEfffris");
DlgToolTip->Activate(TRUE);
return TRUE; // 除非设置了控件的焦点,否则返回 TRUE
}并且
BOOL CSuspend::PreTranslateMessage(MSG* pMsg)
{
if (DlgToolTip!= NULL)
DlgToolTip->RelayEvent(pMsg);
return CDialog::PreTranslateMessage(pMsg);
}但现在仍然不能显示,是什么原因?是不是由于这个对话框的父类是系统桌面?
该怎么解决?立马结算,在线等~~~
解决方案 »
- MFC多线程的疑问请教高手解答。
- 语音通话只能单向进行
- 请帮忙,做不出就没有工作了!Debug Assertion Failed!错误.
- 烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫
- 求大连的程序员进来看看!
- <提问>自画窗口的解决方案
- 高手请进!紧急,在线等!!!!!!!!!!!!!!!!!!
- GetDlgItem()出错???
- const的用法及意义,如 BOOL IsKindOf (const CRuntimeClass *pClass ) const;如何解释
- 我用MFC的框架做的ActiveX控件,需要在控件中读出系统当前的时间,怎么实现?
- 从CEdit类派生一个CConsoleShell类,迷惑中...
- 一些散列的点,许多点都是聚合成一条线的,但仍有不少的杂点.怎样去掉这些杂点?详细请看内容
参考上面的例子中的ToolTip类!
具体的可以参考:
ToolTip类
http://www.codeproject.com/miscctrl/pptooltip.asp
http://www.vckbase.com/document/viewdoc/?id=660