⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subject_49527.htm

📁 vc
💻 HTM
字号:
<p>
序号:49527 发表者:yanqingguang 发表日期:2003-08-11 16:39:26
<br>主题:SortItems使用
<br>内容:我在网上看到有关SortItems的源代码,我下载了一个觉得很不错,但是当我在数据库中使用时就出现了问题。<BR>void CShowLogDlg::OnColumnclickListShowlog(NMHDR* pNMHDR, LRESULT* pResult) <BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;<BR>&nbsp;&nbsp;&nbsp;&nbsp;if( pNMListView-&gt;iSubItem == m_showlog.m_nSortedCol )<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;m_showlog.m_fAsc = !m_showlog.m_fAsc;<BR>&nbsp;&nbsp;&nbsp;&nbsp;else<BR>&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;m_showlog.m_fAsc = TRUE;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;m_showlog.m_nSortedCol = pNMListView-&gt;iSubItem;<BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;m_showlog.SortItems( ListCompare,(DWORD)&amp;m_showlog);<BR>&nbsp;&nbsp;&nbsp;&nbsp;*pResult = 0;<BR>}<BR>static int CALLBACK ListCompare(LPARAM lParam1, LPARAM lParam2, LPARAM lParamSort)<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;CSortList* pV=(CSortList*)lParamSort;<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;CString szComp1 = pV-&gt;GetItemText(lParam1,pV-&gt;m_nSortedCol);<BR>&nbsp;&nbsp;&nbsp;&nbsp;CString szComp2 = pV-&gt;GetItemText(lParam2,pV-&gt;m_nSortedCol);<BR>&nbsp;&nbsp;&nbsp;&nbsp;int iCompRes;<BR>&nbsp;&nbsp;&nbsp;&nbsp;iCompRes=strcmp(szComp1, szComp2);<BR>&nbsp;&nbsp;&nbsp;&nbsp;return iCompRes;<BR>}<BR>struct DEMO_DATA<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;char szName[20];<BR>&nbsp;&nbsp;&nbsp;&nbsp;int iAge;<BR>}strAllData[6]={{"王某",30},{"张某",40},{"武某",32},{"陈某",20},{"李某",36},{"徐某",22}};<BR>说明:当我在listctrl中通过对话框初始化OnInitDialog()函数,我点击list的Colunm时就可以按照某一列Column的字符的大小进行排列,但是当我的listctrl的结果是从数据库中得到的话就无法实现大小顺序的排列.下面的土就是实现的效果,上面的图是从数据库中得到的,就无法实现排序的效果。不知道问什么,希望达到大家的帮助,谢谢!
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:yanqingguang 回复日期:2003-08-11 16:51:05
<br>内容:图片
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:夜未眠 回复日期:2003-08-11 23:40:36
<br>内容:看了以后,觉得代码好怪异,和MSDN定义的用法有出入,lParamSort不是那么用的呀。不过也不至于出错,但你无法实现对多列的排序,以及按升序和降序排列。你有没有调用SetItemData,会不会是lParam1和lParam2用的不对。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -