首    页 界面/窗口 网络/通讯 数据库 组件开发 图像/多媒体 NET/Web 其它技术 源码下载 资料下载 软件共享 软件外包 曲艺杂谈
栏目导航:  首    页  |  界面/窗口  |  列表控件   


 在ListCtrl中将多选框变为单选框的方法


原作者:lyzhm    源出处:CSDN    发布者:施昌权    发布类型:转载    发布日期:2008-09-25

      

        在ListCtrl中将多选框变为单选框的方法:

        假定ID为IDC_LIST1
        增加:
        ON_NOTIFY(LVN_ITEMCHANGED, IDC_LIST1, OnItemchangedList1)

        函数实现:
        void CTestDlg::OnItemchangedList1(NMHDR* pNMHDR, LRESULT* pResult)
        {
                NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
                // TODO: Add your control notification handler code here
                *pResult = 0;
   
                static int lSelectItem=-1;
                if (pNMListView->uOldState == 0 && pNMListView->uNewState == 0)
                        return;    // No change

                BOOL bPrevState = (BOOL)(((pNMListView->uOldState & LVIS_STATEIMAGEMASK)>>12)-1);   // Old check box state
                if (bPrevState < 0)    // On startup there's no previous state
                        bPrevState = 0; // so assign as false (unchecked)

                // New check box state
                BOOL bChecked=(BOOL)(((pNMListView->uNewState & LVIS_STATEIMAGEMASK)>>12)-1);  
                if (bChecked < 0) // On non-checkbox notifications assume false
                        bChecked = 0;

                if (bPrevState == bChecked) // No change in check box
                        return;
   
                if(bChecked)
                {
                        if(lSelectItem!=-1)
                        {
                                //already checked, reset the last checked item
                                m_list.SetCheck(lSelectItem,FALSE);
                        }
                        lSelectItem=pNMListView->iItem;
                }
                else
                {
                        //UnCheck,reset lSelectItem
                        lSelectItem=-1;
                }
        }


关于我们 版权声明 广告服务 联系我们 友情链接 加入收藏
站长:施昌权    Email:scq2099yt@163.com    MSN:scq2099yt@live.cn    QQ:14046300    本站QQ群:67202409
Copyright © 2008     卓为VC(www.joyvc.cn)    All Rights Reserved    建议分辨率 1024×768
本站由施昌权制作维护
京ICP备09012297号