1,在access中有如下数据,现需将其显示在列表中,但是我搞不清程序执行完第一段后,列表里得到的是什么?同时搞不清执行完第二段后(当然是假设在第一段没有执行时,单独执行第二段。如果先执行第一段,再执行第二段,肯定能得到正确结果),列表里得到的是什么?
2,access中的数据如下 课程 星期1 星期2 星期3 星期4 星期5
----------------------------------------
1 语文 数学 英语 物理 化学
----------------------------------------
2 物理 化学 语文 数学 英语
----------------------------------------
3 数学 英语 物理 语文 化学
----------------------------------------
4 自习 计算机 美术 音乐 体育
----------------------------------------
5.....................................
----------------------------------------3,第一段:
//设置:列对其方式,列宽度(像素),缓冲文本,列索引(序号)
m_Lc.mask=LVCF_FMT|LVCF_WIDTH|LVCF_TEXT|LVCF_SUBITEM; //设置列属性
for(i=0;i<m_Set->m_nFields;i++)//m_nFields是CRecordset对象的成员变量
{
m_Set->GetODBCFieldInfo(i,DbFi); //用索引来查找字段m_Lc.iSubItem=i; //LVCF_SUBITEM
m_Lc.fmt=LVCFMT_LEFT; //LVCF_FMT
m_Lc.cx=DbFi.m_strName.GetLength()*10+85; //LVCF_WIDTH
m_Lc.pszText=DbFi.m_strName.GetBuffer(DbFi.m_strName.GetLength());
//LVCF_TEXT
GetListCtrl().InsertColumn(i,&m_Lc);//CListView::GetListCtrl()
}
问:执行玩该段后,列表中插入的是什么?
the result is 课程 星期1 星期2 星期3 星期4 星期5 ????????????????????
or : 课程 星期1 星期2 星期3 星期4 星期5
----------------------------------------
1 语文 数学 英语 物理 化学
----------------------------------------
2 物理 化学 语文 数学 英语
----------------------------------------
3 数学 英语 物理 语文 化学
----------------------------------------
4 自习 计算机 美术 音乐 体育
----------------------------------------
5.....................................???????????????????????/*虚线仅方便视
---------------------------------------- 觉上的看*/
4, 第二段:
LV_ITEM m_item; //条目结构体对象
CString string; //字符串临时变量
CDBVariant DbVariant;
i=0;
if(m_Set->IsEOF()) //记录集是否为空
{
AfxMessageBox("记录集没有记录");
return;
}
m_Set->MoveFirst(); //从第一个记录开始
while(m_Set->IsEOF()==0) //是否到达最后一个记录
{
m_item.mask=LVIF_TEXT; //指向存放项文本缓冲区
m_item.iItem=i; //从0开始的表的索引(行序号)
m_item.iSubItem=0; //从1开始编号的索引(列序号)m_Set->GetFieldValue((short)0,string);
m_item.pszText=string.GetBuffer(string.GetLength());
m_List->InsertItem(&m_item);//插入条目
/*该段所查入的有是什么数据???????????????????,最好回答问号处所提的问题,谢谢各位如此关爱啊!!!!!*/
//显示列数据
for(j=1;j<m_Set->m_nFields;j++)
{
m_Set->GetFieldValue((short)j,string);
m_List->SetItemText(i,j,string.GetBuffer(string.GetLength()));
}
m_Set->MoveNext();//下移记录
i++;
}
2,access中的数据如下 课程 星期1 星期2 星期3 星期4 星期5
----------------------------------------
1 语文 数学 英语 物理 化学
----------------------------------------
2 物理 化学 语文 数学 英语
----------------------------------------
3 数学 英语 物理 语文 化学
----------------------------------------
4 自习 计算机 美术 音乐 体育
----------------------------------------
5.....................................
----------------------------------------3,第一段:
//设置:列对其方式,列宽度(像素),缓冲文本,列索引(序号)
m_Lc.mask=LVCF_FMT|LVCF_WIDTH|LVCF_TEXT|LVCF_SUBITEM; //设置列属性
for(i=0;i<m_Set->m_nFields;i++)//m_nFields是CRecordset对象的成员变量
{
m_Set->GetODBCFieldInfo(i,DbFi); //用索引来查找字段m_Lc.iSubItem=i; //LVCF_SUBITEM
m_Lc.fmt=LVCFMT_LEFT; //LVCF_FMT
m_Lc.cx=DbFi.m_strName.GetLength()*10+85; //LVCF_WIDTH
m_Lc.pszText=DbFi.m_strName.GetBuffer(DbFi.m_strName.GetLength());
//LVCF_TEXT
GetListCtrl().InsertColumn(i,&m_Lc);//CListView::GetListCtrl()
}
问:执行玩该段后,列表中插入的是什么?
the result is 课程 星期1 星期2 星期3 星期4 星期5 ????????????????????
or : 课程 星期1 星期2 星期3 星期4 星期5
----------------------------------------
1 语文 数学 英语 物理 化学
----------------------------------------
2 物理 化学 语文 数学 英语
----------------------------------------
3 数学 英语 物理 语文 化学
----------------------------------------
4 自习 计算机 美术 音乐 体育
----------------------------------------
5.....................................???????????????????????/*虚线仅方便视
---------------------------------------- 觉上的看*/
4, 第二段:
LV_ITEM m_item; //条目结构体对象
CString string; //字符串临时变量
CDBVariant DbVariant;
i=0;
if(m_Set->IsEOF()) //记录集是否为空
{
AfxMessageBox("记录集没有记录");
return;
}
m_Set->MoveFirst(); //从第一个记录开始
while(m_Set->IsEOF()==0) //是否到达最后一个记录
{
m_item.mask=LVIF_TEXT; //指向存放项文本缓冲区
m_item.iItem=i; //从0开始的表的索引(行序号)
m_item.iSubItem=0; //从1开始编号的索引(列序号)m_Set->GetFieldValue((short)0,string);
m_item.pszText=string.GetBuffer(string.GetLength());
m_List->InsertItem(&m_item);//插入条目
/*该段所查入的有是什么数据???????????????????,最好回答问号处所提的问题,谢谢各位如此关爱啊!!!!!*/
//显示列数据
for(j=1;j<m_Set->m_nFields;j++)
{
m_Set->GetFieldValue((short)j,string);
m_List->SetItemText(i,j,string.GetBuffer(string.GetLength()));
}
m_Set->MoveNext();//下移记录
i++;
}
2.插入的是1,2,3,4,5......
3.执行完第一次for插入的是:语文 数学 英语 物理 化学
第二次for插入内容:物理 化学 语文 数学 英语
......
/*该段所查入的有是什么数据
插入一个lvitem,内容分别为
1
2
3
4
5