VC++鼠标自动提示功能
来源:互联网 发布:omnifocus windows版 编辑:程序博客网 时间:2024/05/16 10:18
1: 在需要加入鼠标提示的窗口的OnInitDialog方法中创建工具栏窗口和图像列表窗口,关联图像列表,设置工具栏按钮文本,启动工具栏的EnablToolTip方法激活提示功能。
BOOL CBookManageDlg::OnInitDialog()
{
CDialog::OnInitDialog();
………..
//先导入图片,在该类的头文件中定义了CImaginList m_imagelist 和CToolBar m_toolbar
m_imagelist.Create(30,30,ILC_COLOR24|ILC_MASK,1,1);
m_imagelist.Add(AfxGetApp()->LoadIcon(IDI_BookInfo));
m_imagelist.Add(AfxGetApp()->LoadIcon(IDI_BookInStockIcon));
m_imagelist.Add(AfxGetApp()->LoadIcon(IDI_BookQuery));
m_imagelist.Add(AfxGetApp()->LoadIcon(IDI_InputStore));
m_imagelist.Add(AfxGetApp()->LoadIcon(IDI_ShutDown));
UINT array[5]; //定义工具栏数组
for(int i=0;i<5;i++)
{
array[i]=5000+i; //为每个工具栏创建索引
}
m_toolbar.Create(this); //创建工具栏
m_toolbar.SetButtons(array,5);
//为每个工具栏设置名称
m_toolbar.SetButtonText(0,"图书信息");
m_toolbar.SetButtonText(1,"图书入库");
m_toolbar.SetButtonText(2,"销售查询");
m_toolbar.SetButtonText(3,"系统配置");
m_toolbar.SetButtonText(4,"系统退出");
m_toolbar.GetToolBarCtrl().SetButtonWidth(60,120);
m_toolbar.GetToolBarCtrl().SetImageList(&m_imagelist); //关联图片到按键上
m_toolbar.SetSizes(CSize(60,60),CSize(25,40)); //设置按键大小
RepositionBars(AFX_IDW_CONTROLBAR_FIRST,AFX_IDW_CONTROLBAR_LAST,0);//显示工具栏
m_toolbar.EnableToolTips(TRUE); //激活提示功能
return TRUE; // return TRUE unless you set the focus to a control
}
2:在该对话框的消息映射部分添加ON_NOTIFY_EX映射宏
如图:
3:在需要加入鼠标提示的窗口的头文件中,声明OnToolTipNotify函数。
class CXXXXDlg : public CDialog
{
………..
// Generated message map functions
//{{AFX_MSG(CBookManageDlg)
virtual BOOL OnInitDialog();
afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
afx_msg void OnPaint();
afx_msg HCURSOR OnQueryDragIcon();
afx_msg BOOL OnToolTipNotify(UINT id,NMHDR* pNMHDR,LRESULT* pResult);
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
如图:
4:添加消息处理函数OnToolTipNotify。声明和定义代码如下:
BOOL CBookManageDlg::OnToolTipNotify(UINT id,NMHDR* pNMHDR,LRESULT* pResult)
{
TOOLTIPTEXT *pTTT=(TOOLTIPTEXT *)pNMHDR;
UINT nID=pNMHDR->idFrom; //获取工具栏按钮ID
if(nID)
{
nID=m_toolbar.CommandToIndex(nID); //根据ID获取按钮索引
if(nID!=-1)
{
switch(nID)
{
case 0 :
{
pTTT->lpszText="图书信息"; //设置提示信息文本
pTTT->hinst=AfxGetResourceHandle();
return(TRUE);
}
break;
case 1 :
{
pTTT->lpszText="图书入库"; //设置提示信息文本
pTTT->hinst=AfxGetResourceHandle();
return(TRUE);
}
break;
case 2 :
{
pTTT->lpszText="销售查询"; //设置提示信息文本
pTTT->hinst=AfxGetResourceHandle();
return(TRUE);
}
break;
case 3 :
{
pTTT->lpszText="系统配置"; //设置提示信息文本
pTTT->hinst=AfxGetResourceHandle();
return(TRUE);
}
break;
case 4 :
{
pTTT->lpszText="系统退出"; //设置提示信息文本
pTTT->hinst=AfxGetResourceHandle();
return(TRUE);
}
break;
}
}
}
return(FALSE);
}
作者:biolee 文章总结于:10.3.22 发表于:10.5.30
- VC++鼠标自动提示功能
- VC中鼠标经过按钮弹出功能提示(TIPS)
- VC中鼠标经过按钮弹出功能提示(TIPS)
- Android studio鼠标提示功能
- Android studio鼠标提示功能
- MFC/vc中当鼠标经过按钮等控件时出现文字提示功能
- MFC/VC中当鼠标停靠在按钮等控件上时出现文字提示功能
- MFC/VC中当鼠标经过按钮等控件时出现文字提示功能
- MFC/vc中当鼠标经过按钮等控件时出现文字提示功能
- MFC/VC中当鼠标停靠在按钮等控件上时出现文字提示功能
- MFC/VC中当鼠标停靠在按钮等控件上时出现文字提示功能
- VC中当鼠标停靠在按钮等控件上时出现文字提示功能
- MFC/VC中当鼠标停靠在按钮等控件上时出现文字提示功能
- myeclipse自动提示功能
- Eclipse自动提示功能
- 文本框自动提示功能
- eclipse--自动提示功能
- Ajax自动提示功能
- Getting Real 软件产品 从零到成功
- 为什么投影仪开和关是两个按钮?
- MFC学习笔记之:Windows如何区分鼠标双击和两次单击
- 我的那些生活感悟
- 浪费了宝贵的一个月 忘记了为自己的梦想努力
- VC++鼠标自动提示功能
- 测试总结
- 准备小结
- VC++修改窗口图标步骤
- div对话框,js+div+css实现好看的提示框效果
- 百度实习生笔试2010
- 从U盘修复Windows系统启动项
- 关于批量修改文件名字
- VC++公共模块被调用的实现方法