VC/MFC 在ListCtl 控件中随鼠标移动提示单元格信息
- BEGIN_MESSAGE_MAP(CTipListCtrl, CListCtrl)
- //{{AFX_MSG_MAP(CTipListCtrl)
- ON_WM_MOUSEMOVE()
- ON_WM_DESTROY()
- //}}AFX_MSG_MAP
- END_MESSAGE_MAP()
- /////////////////////////////////////////////////////////////////////////////
- // CTipListCtrl message handlers
- void CTipListCtrl::OnMouseMove(UINT nFlags, CPoint point)
- {
- // TODO: Add your message handler code here and/or call default
- if(m_bEnableTips)
- {
- CString str;
- LVHITTESTINFO lvhti;
- // 判断鼠标当前所在的位置(行, 列)
- lvhti.pt = point;
- SubItemHitTest(&lvhti);
- // 如果鼠标移动到另一个单元格内, 则进行处理; 否则, 不做处理
- if((lvhti.iItem != m_nItem) || (lvhti.iSubItem != m_nSubItem))
- {
- // 保存当前鼠标所在的(行,列)
- m_nItem = lvhti.iItem;
- m_nSubItem = lvhti.iSubItem;
- // 如果鼠标移动到一个合法的单元格内,则显示新的提示信息
- // 否则, 不显示提示
- if((m_nItem != -1) && (m_nSubItem != -1))
- {
- // @@@@@@@@ 在这里修改要显示的提示信息
- // 这里仅仅是一个例子---获得当前单元格的文字信息, 并设置为新的提示信息
- str = GetItemText(m_nItem ,m_nSubItem);
- m_toolTip.AddTool(this, str);
- // 显示提示框
- m_toolTip.Pop();
- }
- else
- {
- m_toolTip.AddTool(this, _T("双击记录可查看人员详细信息并对其修改"));
- // 显示提示框
- m_toolTip.Pop();
- }
- }
- }
- CListCtrl::OnMouseMove(nFlags, point);
- }
- BOOL CTipListCtrl::PreTranslateMessage(MSG* pMsg)
- {
- // TODO: Add your specialized code here and/or call the base class
- if(::IsWindow(m_toolTip.GetSafeHwnd()))
- {
- m_toolTip.RelayEvent(pMsg);
- }
- return CListCtrl::PreTranslateMessage(pMsg);
- }
- void CTipListCtrl::OnDestroy()
- {
- CListCtrl::OnDestroy();
- // TODO: Add your message handler code here
- // listctrl销毁时, 同时销毁 tooltipctrl
- m_toolTip.DestroyWindow();
- m_toolTip.Detach();
- }
- BOOL CTipListCtrl::EnableTips()
- {
- EnableToolTips(TRUE);
- // 创建tooltip控件
- m_bEnableTips = m_toolTip.Create(this, TTS_ALWAYSTIP);
- if(m_bEnableTips)
- {
- m_toolTip.Activate(TRUE);
- m_toolTip.SetDelayTime(TTDT_INITIAL, 0);
- }
- return m_bEnableTips;
- }
VC/MFC 在ListCtl 控件中随鼠标移动提示单元格信息的更多相关文章
- VC MFC工具栏(CToolBar)控件
一.工具栏 工具栏控件在控件面板里没有对应的选项(图标),但有一个工具栏控件类CToolBar,所以我们如果要创建一个工具栏控件并显示在窗口里的话,只能用代码来完成,事实上任何一种控件,都可以用代码创 ...
- VC MFC工具栏(CToolBar)控件(转)
工具栏 工具栏控件在控件面板里没有对应的选项(图标),但有一个工具栏控件类CToolBar,所以我们如果要创建一个工具栏控件并显示在窗口里的话,只能用代码来完成,事实上任何一种控件,都可以用代码创建, ...
- vc++,MFC,组合框控件设置时0xC0000005: 读取位置 0x00000020 时发生访问冲突
511.exe 中的 0x78bb5dec (mfc90ud.dll) 处未处理的异常: 0xC0000005: 读取位置 0x00000020 时发生访问冲突 _AFXWIN_INLINE int ...
- 在WPF的WebBrowser控件中屏蔽脚本错误的提示
在WPF中使用WebBrowser控件显示网页时,经常会报脚本错误的提示,如何屏蔽掉这些错误提示呢.方法是定义如下方法: public void SuppressScriptErrors(WebBro ...
- [c#]如何在form的webbrowser控件中获得鼠标坐标
如图这样,其实是要插入一个time的控件,这样才能使得坐标值会根据鼠标的移动而不停变化.time插件中写private void timer1_Tick(object sender, EventArg ...
- 帆软中使用switch将控件的显示值“传递”给单元格
如下图,控件的实际值和显示值是我们自定义的. 当我们选择控件时,想要在某个单元格内显示控件的显示值.一般我们在单元格内直接 $控件名 可以获得控件值.比如当我们选择事故数时,我们自然不能在单元格内直 ...
- 在TextBox控件中禁用鼠标右键
实现效果: 知识运用: MouseEventArgs类的Button属性 TextBox控件的ContextMenu属性 实现代码: private void textBox1_MouseDo ...
- c# WinForm开发 DataGridView控件的各种操作总结(单元格操作,属性设置)
一.单元格内容的操作 *****// 取得当前单元格内容 Console.WriteLine(DataGridView1.CurrentCell.Value); // 取得当前单元格的列 Index ...
- 转:c# WinForm开发 DataGridView控件的各种操作总结(单元格操作,属性设置)
一.单元格内容的操作 *****// 取得当前单元格内容 Console.WriteLine(DataGridView1.CurrentCell.Value); // 取得当前单元格的列 Index ...
随机推荐
- 富文本编辑器 - wangEditor 上传图片
效果: . 项目结构图: wangEditor-upload-img.html代码: <html> <head> <title>wangEditor-图片上传< ...
- WinForm - 格式化DataGridView单元格数据
效果: 代码: /// <summary> /// 格式化数据 /// </summary> private void dataGridView1_CellFormatting ...
- c语言,链表
#include "stdafx.h" #include <stdio.h> #include <stdlib.h> struct Node{ struct ...
- xmlns:android="http://schemas.android.com/apk/res/android的作用是
xmlns:android="http://schemas.android.com/apk/res/android的作用是 这个是xml的命名空间,有了他,你就可以alt+/作为提示,提示你 ...
- Qt中Ui名字空间以及setupUi函数的原理和实现
用最新的QtCreator选择GUI的应用会产生含有如下文件的工程 下面就简单分析下各部分的功能. .pro文件是供qmake使用的文件,不是本文的重点[不过其实也很简单的],在此不多赘述. 所以呢, ...
- solr总结 第六部分:solr查询语法
1.基本查询语法 q:全文查询.schema.xml里面定义了如下两块.eg q=ibm即表示org_name或者org_weisite里面出现ibm的document都可以被匹配到.KeyWords ...
- perl 回调函数
在计算机程序设计中,回调函数,或简称回调(Callback),是指通过函数参数传递到其它代码的,某一块可执行代码的引用.这一设计允许了底层代码调用在高层定义的子程序. 没啥不好理解的呀,就是向函数的参 ...
- 基于visual Studio2013解决面试题之1307二分查找
题目
- 基于visual Studio2013解决C语言竞赛题之1038数字验证
题目 解决代码及点评 /********************************************************************** ...
- 组件接口(API)设计指南[4]-通知(Notifications)
*返回文件夹阅读其它章节: http://blog.csdn.net/cuibo1123/article/details/39894477 通知(Notifications) 通知是托付协议的还有一半 ...