listctrl如何实现分页
1个回答
展开全部
我现在在做一个自己用的小软件,刚学MFC两个星期左右,对这个控件也不熟,所以想请大家指导,就是我的界面如下
------解决方案--------------------------------------------------------
CListCtrl::SetItemText()就可以了
------解决方案--------------------------------------------------------
关键是数据集的获得,你可以把数据存在容器中,慢慢输出。
------解决方案--------------------------------------------------------
数据放到一个链表中,每页只显示对应的几个数据到ListCtrl
------解决方案--------------------------------------------------------
typedef struct{//your data
}LIST_DATA;
CArray <LIST_DATA,LIST_DATA&m_dataArray;
int m_nPageCount; //当前页数
int m_nPage; //总分页数
//初始化list,显示第一页
m_nPageCount = 1;
for(int i=(m_nPageCount*6); i<m_dataArray.GetCount(); i++){//显示最后一页}}else{for(int i=(m_nPageCount*6); i<((m_nPageCount + 1)*6); i++){//显示后一页}}m_nPageCount ++ ; //页数加1}else{for(int i=((m_nPageCount-1)*6); i<m_dataArray.GetCount(); i++){//显示最后一页}}//其他的照样就行了
------解决方案--------------------------------------------------------
CListCtrl::SetItemText()就可以了
------解决方案--------------------------------------------------------
关键是数据集的获得,你可以把数据存在容器中,慢慢输出。
------解决方案--------------------------------------------------------
数据放到一个链表中,每页只显示对应的几个数据到ListCtrl
------解决方案--------------------------------------------------------
typedef struct{//your data
}LIST_DATA;
CArray <LIST_DATA,LIST_DATA&m_dataArray;
int m_nPageCount; //当前页数
int m_nPage; //总分页数
//初始化list,显示第一页
m_nPageCount = 1;
for(int i=(m_nPageCount*6); i<m_dataArray.GetCount(); i++){//显示最后一页}}else{for(int i=(m_nPageCount*6); i<((m_nPageCount + 1)*6); i++){//显示后一页}}m_nPageCount ++ ; //页数加1}else{for(int i=((m_nPageCount-1)*6); i<m_dataArray.GetCount(); i++){//显示最后一页}}//其他的照样就行了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询