龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > VC开发 >

用Visual C++实现窗口的工具提示(5)

时间:2009-12-30 15:42来源:未知 作者:admin 点击:
分享到:
2.2.5为窗口客户区提供工具提示 工具提示控件还可以为窗口的客户区提供工具提示,本文将使之具有如下功能:当鼠标光标在客户区移动时,在光标附近显

2.2.5为窗口客户区提供工具提示

工具提示控件还可以为窗口的客户区提供工具提示,本文将使之具有如下功能:当鼠标光标在客户区移动时,在光标附近显示当前光标的客户区坐标。具体方法如下:

因为光标移动时发出WM_MOUSEMOVE消息,所以应当在OnMouseMove()方法中为客户区加入工具提示。

// 在文件MyView.cpp中

extern CToolTipCtrl m_ToolTip; //因为m_ToolTip已在MainFrm.cpp中定义

void CMyView::OnMouseMove(UINT nFlags, CPoint point)

{

// TODO: Add your message handler code here and/or call default

static int i=0;

CString str;

str.Format(" %d,%d",point.x,point.y);

if(i==0) {

m_ToolTip.AddTool(this,(LPCTSTR)str); //将客户区加入工具列表

i=1;

}

else

m_ToolTip.UpdateTipText((LPCTSTR)str,this); //更新坐标的显示

m_Tool.Activate(TRUE);

CView::OnMouseMove(nFlags, point);

}

3.小结

基于工具提示的编程是一项引人入胜的内容,本文只介绍了一些常用的编程方法。另外,当窗口最小化时,如果最小化窗口无法容纳窗口标题,也会自动出现工具提示;在任务条的通知区域也可以插入用户自定义的图标和相应的工具提示,这可以通过调用Win32 API函数::Shell_NotifyIcon()来实现,详细情况请参见Visual C++的联机文档。

精彩图集

赞助商链接