vc ListControl设置checkbox风格,时owerdata不能设置为true---m_list.SetItemText()m_list.SetItemData()有关

原创 2015年07月07日 10:55:31

网友:

http://blog.163.com/weichao1984@126/blog/static/20525954201082981647567/

这人写的非常全,很好,~\(≧▽≦)/~赞!



ListControl加checkbox属性,简单测试:

1、拖动控件,listcontrol属性如下:



2、对listcontrol添加自己的control变量 m_list


3、设置风格按键,代码:

void CListCtrlDlg::OnBnClickedButton4()
{
<span style="white-space:pre">	</span>// TODO: 在此添加控件通知处理程序代码
<span style="white-space:pre">	</span>m_list.SendMessage (LVM_SETEXTENDEDLISTVIEWSTYLE, 0,
<span style="white-space:pre">		</span>LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES | LVS_EX_CHECKBOXES);
<span style="white-space:pre">	</span>m_list.DeleteAllItems();
}


4、插入数据按键:

 m_list.InsertColumn( 0, "ID", LVCFMT_LEFT, 40 );//插入列
     m_list.InsertColumn( 1, "NAME", LVCFMT_LEFT, 50 );
	
      int nRow = m_list.InsertItem(0, "11");//插入行
      m_list.SetItemText(nRow, 1, "jacky");//设置数据
	   int nRow1 = m_list.InsertItem(1, "12");//插入行
     m_list.SetItemText(nRow1, 1, "Tom");//设置数据



5、选择按键:

POSITION pos=m_list.GetFirstSelectedItemPosition();//pos就是行索引号,晕
	if(pos==NULL)
		::AfxMessageBox("请选择要选中的行!");
	else
	{
		while(pos)
		{  
			int nIndex=-1;
			nIndex	= m_list.GetNextSelectedItem(pos);//多少行--

			if(nIndex >=0&&nIndex<m_list.GetItemCount())
			{
				m_list.SetCheck(nIndex,TRUE);
			}
		}
	}





下面,咱说一下,这个ower data属性:

1将其设置为True的时候,程序里这么用的

m_list.SetItemCountEx(m_vAllMJKaInfo.size());
m_list.Invalidate();

这样是动态更新list界面显示的东西


2如果只是简单的  m_list.SetItemText()  m_list.SetItemData()则,将这个 owerdata属性设置为False(默认也是False)


总之,一般用法就是将这个 owerdata属性设置为FALSE,在list中添加Checkbox对勾属性也没问题。

除非,你程序里动态更新list界面,用到 m_list.Invalidate();那么你的 owerdata属性就得设置为True,这时checkbox之类的属性就会有问题。

目前解决办法,2者只能保留其一,我的解决办法是在2个界面上,建立分开的listcontrol,那么一个 owerdata属性就得设置为True,另一个 owerdata属性就得设置为False这样就不会有冲突了。




版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

S.M.A.R.T. attribute list

  • 2010-07-30 21:48
  • 715KB
  • 下载

M list report

  • 2012-11-12 10:31
  • 164KB
  • 下载

M3U , PLSv2 and ASX Play List Specification

.wpl 格式可以创建动态播放列表,而.asx 和.m3u 格式则不能创建动态播放列表。 M3U (WinAmp) Play List Specification Winamp playl...

Reverse linked list(逆转从n到m处的单链表)--leetcode

题目描述: Reverse a linked list from position m to n. Do it in-place and in one-pass.

UVa 402 M*A*S*H (STL&list)

402 - M*A*S*H Time limit: 3.000 seconds  http://uva.onlinejudge.org/index.php?option=com_onlinejudge...

【HDU5808 BestCoder Round 86E】【时间排序 树状数组计数 bitsetDP 或分治】Price List Strike Back 距离范围、区间范围商店购物 使得价值和恰为m

Price List Strike Back    Accepts: 2    Submissions: 51  Time Limit: 6000/3000 MS (Java/Other...

LIST OF TRIBON M3 EXECUTABLES

Executables LIST OF TRIBON M3 EXECUTABLES Note! All customers do not necessarily have all ...

(M)328. Odd Even Linked List

链接:https://leetcode.com/problems/odd-even-linked-list/ 虽然标着Medium,但是还是马上就得出思路了。提交以后看了看标准答案,哎哟,自己的答案...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

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