新的在listctrl中实现复选框变单选框的代码(通用性更好)

原创 2007年09月23日 23:09:00

前几天转载了一篇实现复选框变单选框的代码,但是该方法采用了静态变量,如果该对话框多次调用,将会有影响。现在写了个新的方法实现,供参考。

(1)增加ON_NOTIFY(LVN_ITEMCHANGED, IDC__LST, &C**::OnLvnItemchangedLst)消息。

(2)该消息代码实现:

void C**::OnLvnItemchangedMsnLst(NMHDR *pNMHDR, LRESULT *pResult)
{
 NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;

BOOL bChecked = ListView_GetCheckState(m_lst.m_hWnd, pNMListView->iItem);

 // if it's checked uncheck everything else.
 if (bChecked)
 {
  for (int nCount = 0; nCount < m_lst.GetItemCount(); nCount++)
  {
   if (nCount != pNMListView->iItem)
   {
    ((CListCtrl*)(&m_lst))->SetCheck(nCount, FALSE);
   }
   else
   {
    ((CListCtrl*)(&m_lst))->SetCheck(nCount, TRUE);
   }
  }
 }
 else//if click the checked item, don't uncheck it
 {
 
 }

 *pResult   =   1;    

}

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

在ListCtrl中将多选框变为单选框的方法:假定ID为IDC_LIST1增加:ON_NOTIFY(LVN_ITEMCHANGED, IDC_LIST1, OnItemchangedList1)函数实...
  • cxin917
  • cxin917
  • 2007年09月12日 23:18
  • 1753

如何让ListCtrl的CheckBox只有一个处于选中状态

1、     要让ListCtrl的每一行的第一列为CheckBox,需要做如下设置:   listCtrl.SetExtendedStyle(m_listCtrl.GetExtendedStyl...
  • rundll64
  • rundll64
  • 2015年05月21日 01:21
  • 378

如何让ListCtrl的CheckBox只有一个处于选中状态

1、要让ListCtrl的每一行的第一列为CheckBox,需要做如下设置: listCtrl.SetExtendedStyle(m_listCtrl.GetExtendedStyle()|LVS_E...
  • u010204038
  • u010204038
  • 2014年12月23日 20:33
  • 738

新的在listctrl中实现复选框变单选框的代码

(1)增加ON_NOTIFY(LVN_ITEMCHANGED, IDC__LST, &C**::OnLvnItemchangedLst)消息。 (2)该消息代码实现: void C**::...
  • huacm6171
  • huacm6171
  • 2011年09月10日 11:36
  • 298

java中单选框和复选框

package Second; import java.awt.*; import javax.swing.*; import sun.org.mozilla.javascript.internal....
  • smallacmer
  • smallacmer
  • 2012年12月03日 20:36
  • 8542

复选框变成单选框

复选框实现单选
  • myhappymoment
  • myhappymoment
  • 2014年12月23日 14:21
  • 577

unity_NGUI系统学习(十二)_Checkbox单选框的创建

unity_NGUI系统学习(十二)_Checkbox单选框的创建 首先还是如往常一般创建一个Sprite对象,并且右键Attach一个BoxCollider组件(这样auto-adjust to ...
  • MaximilianLiu
  • MaximilianLiu
  • 2017年10月10日 22:30
  • 125

CheckBox的单选框实现

这里有两种方法可以实现: 第一种是:在RadioGroup中使用自定义的RadioButton(其实就是使用图片,改变效果); 这种方法的优缺点: 优点:代码简单,多使用的是布局文件 缺点:布局文件不...
  • zuohenghengl
  • zuohenghengl
  • 2015年07月10日 11:02
  • 1026

JavaScript单选框复选框

html> html lang="en"> head> meta http-equiv="content-type" content="text/html" charset="UTF-8"> ...
  • pangqiandou
  • pangqiandou
  • 2016年09月27日 14:45
  • 1095

入门HTML之复选框 单选框 下拉列表

复选框(Checkbox)  在一个表单里的所有多选框可以有一个或多个被选中。 复选框 请选择您喜欢的音乐: 摇滚 爵士 流行 单选框(RadioButton)...
  • u011333814
  • u011333814
  • 2013年12月18日 20:53
  • 3463
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:新的在listctrl中实现复选框变单选框的代码(通用性更好)
举报原因:
原因补充:

(最多只允许输入30个字)