CListCtrl实现tooltip信息提示

CListCtrl实现tooltip信息提示当鼠标移动到CListCtrl的某一行时,提示一些信息。具体实现方法:1、头文件定义CToolTipCtrlm_tooltip;2、在OnInitDialog()中进行初始化EnableToolTips(TRUE);   m_tooltip.Create(this);   m_tooltip.SetMaxTipWidth(500);   m_tooltip.Act…

大家好,又见面了,我是你们的朋友全栈君。

当鼠标移动到CListCtrl的某一行时,提示一些信息。

具体实现方法:

1、头文件定义

CToolTipCtrl m_tooltip;

2、在OnInitDialog()中进行初始化

EnableToolTips(TRUE);
    m_tooltip.Create(this);
    m_tooltip.SetMaxTipWidth(500);
    m_tooltip.Activate(TRUE);

    LONG lStyle;
    lStyle  = GetWindowLong(m_listCourse.m_hWnd, GWL_STYLE);//获取当前窗口style
    lStyle  &= ~LVS_TYPEMASK; //清除显示方式位
    lStyle |= LVS_REPORT; //设置style
    SetWindowLong(m_listCourse.m_hWnd, GWL_STYLE, lStyle);//设置style
    DWORD dwStyle = m_listCourse.GetExtendedStyle();
    dwStyle |= LVS_EX_FULLROWSELECT;//选中某行使整行高亮(只适用与report风格的listctrl)
    dwStyle |= LVS_EX_GRIDLINES;//网格线(只适用与report风格的listctrl)
    dwStyle |= LVS_EX_CHECKBOXES;//item前生成checkbox控件
    m_listCourse.SetExtendedStyle(dwStyle); //设置扩展风格

 

CRect rectangle;
        m_listCourse.GetWindowRect(&rectangle);
        int nWidth  =rectangle.Width();

        m_listCourse.InsertColumn( 0, _T(“”), LVCFMT_CENTER,-1, -1);
        m_listCourse.InsertColumn( 1, _T(“序号”), LVCFMT_CENTER,rectangle.Width()*0.1 , -1);
        m_listCourse.InsertColumn( 2, _T(“添加时间”), LVCFMT_CENTER,rectangle.Width()*0.2 , -1);
        m_listCourse.InsertColumn( 3, _T(“课程名称”), LVCFMT_CENTER,rectangle.Width()*0.25 , -1);
        m_listCourse.InsertColumn( 4, _T(“课程难度”), LVCFMT_CENTER,rectangle.Width()*0.2 , -1);
        m_listCourse.InsertColumn( 5, _T(“课程时长”), LVCFMT_CENTER,rectangle.Width()*0.25 , -1);
        m_listCourse.DeleteColumn(0);

3.添加数据

for(int j=0;j<10;j++)

{

m_listCourse.InsertItem(j,””);

           strValue.Format(“%d”,j);
            m_listCourse.SetItemText(j,0,strValue);
           strValue.Format(“%d”,j)+1;
            m_listCourse.SetItemText(j,1,strValue);
          strValue.Format(“%d”,j+2);
            m_listCourse.SetItemText(j,2,strValue);
           strValue.Format(“%d”,j+3);
            m_listCourse.SetItemText(j,3,strValue);
           strValue.Format(“%d”,j+4);
            m_listCourse.SetItemText(j,4,strValue);

            strValue.Format(“提示信息内容%d”,j+5);
            CRect rect;
            m_listCourse.GetItemRect(j, &rect, LVIR_BOUNDS);
            //为第j行添加提示文本内容
            m_tooltip.AddTool(&m_listCourse,”故障设置:\r\n”+strValue, &rect, j + 1);

}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/152508.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • python3 软连接_python3哪个版本好用

    python3 软连接_python3哪个版本好用在ubuntu下面发现pip的默认版本指向的是python3.6,而因项目需要利用Python2.7.查看pip版本pip–version指向的的Python3.6,而此时已经为Python建立2.7的软连接查看默认调用pip的位置.whichpip输出/usr/local/bin/pip先删除sudorm-rf/usr/local/bin/pip安装python2.7版本的pipsu…

    2022年9月1日
    0
  • kafka删除主题_kafka从头消费topic数据

    kafka删除主题_kafka从头消费topic数据转自https://www.cnblogs.com/xiaodf/p/10710136.htmlKafka如何彻底删除topic及数据前言:删除kafkatopic及其数据,严格来说并不是很难的操作。但是,往往给kafka使用者带来诸多问题。项目组之前接触过多个开发者,发现都会偶然出现无法彻底删除kafka的情况。本文总结多个删除kafkatopic的应用场景,总结一套删除kafkatopic的标准操作方法。step1:如果需要被删除topic此时正在被程序produce和consum

    2022年10月16日
    0
  • Oracle函数详解:regexp_replace[通俗易懂]

    Oracle函数详解:regexp_replace[通俗易懂]regexp_replace:官方内容:官方语法:官方说明:https://docs.oracle.com/cd/B19306_01/server.102/b14200/functions130.htmregexp_replace函数是replace函数的扩展函数,用于通过正则表达式来进行匹配替换,默认情况下,每次匹配到的正则,都替换为replace_string,返回的字符串与…

    2022年4月29日
    1.0K
  • motan与zookeeper框架[通俗易懂]

    motan与zookeeper框架[通俗易懂]新浪科技讯2016年5月10日,微博方面宣布,支撑微博千亿调用的轻量级RPC框架Motan正式开源了。微博技术团队希望未来能有更多优秀的开源人入驻,并进一步完善优化。搭建新浪RPC框架motanDemo:http://blog.csdn.net/linuu/article/details/53115290 motan是新浪微博开源的RPC框架,github官网是:https:/…

    2022年10月24日
    0
  • 如何在matlab中画二元函数的图像,Matlab画怎么画这个二元函数图像「建议收藏」

    如何在matlab中画二元函数的图像,Matlab画怎么画这个二元函数图像「建议收藏」www.mh456.com防采集。二元函数可以用mesh或者surf函数画图。1、首先打开matlab。2、在matlab当前目录空间右键。3、然后点击new->M-File。4、然后将文件命令为hello.m。5、然后双击该文件,输入[Rmdm]=meshgrid(15:5:50,1:10);6、然后添加f=0.034488*(Rm.^1.9400).*(10^-0….

    2022年9月7日
    0
  • 最小生成树的个数_最小生成树的两种算法

    最小生成树的个数_最小生成树的两种算法给定一张 N 个点 M 条边的无向图,求无向图的严格次小生成树。设最小生成树的边权之和为 sum,严格次小生成树就是指边权之和大于 sum 的生成树中最小的一个。输入格式第一行包含两个整数 N 和 M。接下来 M 行,每行包含三个整数 x,y,z,表示点 x 和点 y 之前存在一条边,边的权值为 z。输出格式包含一行,仅一个数,表示严格次小生成树的边权和。(数据保证必定存在严格次小生成树)数据范围N≤105,M≤3×105输入样例:5 61 2 11 3 22 4 33 5 4

    2022年8月9日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号