在網上看了許多排序的方法,都沒看懂,初學者的悲劇,然後就自己弄了個,請大家指正.
clistctrl控制項的行帶著乙個結構體,不過那結構體不好懂,看得眼花繚亂.好多也弄不明白,就自己寫了個結構體,把一行的資料全寫入結構體中,
交換兩結構體的資料就簡單多了.
typedef struct
mytongxilu;
[.cpp]
寫兩個函式,把結構體寫入指定行中,乙個從指定行中的資料寫入結構體中
//寫入
//讀取資料
_tcscpy_s(toxilu.fenlei, m_list.getitemtext(selindex, 4));
_tcscpy_s(toxilu.tel, m_list.getitemtext(selindex, 5));
return toxilu;
}接下來就是資料交換了,有的還要轉換數字,我就懶得轉換了,全是以字串來比較,
rowint:為要比較的總行數,原來沒弄這引數,每次都要全部比較,所以後來弄個限制行數,比較了的行就不再比較,依次遞減.
colint:為要比較的列的索引
bol:為true為公升序,為flase為降序,
}else}}
}//滑鼠點選列表頭事件
//迴圈比較,最大的放最後,依次遞減
for (int j=m_list.getitemcount();j>=1;j--)
}大功告成,以後再去學習它自帶的結構體.
MFC控制項 CListCtrl3
clistctrl使用詳解 2009年04月07日 星期二 10 56 p.m.如果設定了lvs ex checkboxes屬性,則可以用 bool getcheck int nitem const 來得到某一行是否checked。可以先用下面的語句來刪除以前的東西 for int k 2 k 0 ...
MFC之列表控制項CListCtrl
position ps m list.getfirstselecteditemposition int nsel m list.getnextselecteditem ps 選中的哪行的索引 based 0 或 if m list.getselectedcount 1 return int nsel...
MFC中的列表控制項CListCtrl
在使用clistctrl控制項report顯示風格時,需要設定列標題資訊,否則不能向控制項中新增資料資訊,編輯列標題需要 使用insertcolumn方法 m listctrl.insertcolumn 0,姓名 lvcfmt left,150,0 m listctrl.insertcolumn 1...