MFC 列表控件输出控制

[复制链接]
查看11 | 回复2 | 2010-8-1 21:33:42 | 显示全部楼层 |阅读模式
我第一用这个控件,不知道怎么控制数据插入进去,百度了很久还找不到方法。
前面定义了

m_list.InsertColumn(0,"姓名");

m_list.InsertColumn(1,"性别");

m_list.InsertColumn(2,"学号");

m_list.SetColumnWidth(0,70);

m_list.SetColumnWidth(1,40);

m_list.SetColumnWidth(2,80);//这样没错吧?
以下是输出按钮:

_RecordsetPtr m_pRecordset(__uuidof(Recordset));
m_pRecordset=theApp.m_pConnection->Execute("select * from name",NULL,adCmdText);
if(!m_pRecordset->EndOfFile)
m_pRecordset->MoveFirst();
else
{
MessageBox("表内数据为空");
return;
}
while(!m_pRecordset->EndOfFile)
{

// m_pRecordset->GetCollect("name");//

// m_pRecordset->GetCollect("sex");//

//m_pRecordset->GetCollect("num"));//怎么把name,sex,num,插入一行里面?(InsertItem,SetItemText)都试过了,图片是InsertItem的输出结果。

m_pRecordset->MoveNext();
}
还有一个问题,在清空按钮那里我写了m_list.DeleteItem(0);这只能一条条删,怎么做到可以全部删除呢,还有鼠标指定的删除呢?
输出就如图片那样,没有办法做到一行一行。
希望大家可以讲解得详细点,谢谢了。
void CDiaoDlg::OnDblclkList1(NMHDR* pNMHDR, LRESULT* pResult)
{
// TODO: Add your control notification handler code here
NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
CRect rt;
m_list.GetSubItemRect(pNMListView->iItem,pNMListView->iSubItem,0,rt);
CString str=m_list.GetItemText(pNMListView->iItem,pNMListView->iSubItem);
//MessageBox(str);

RORD dlg;
dlg.m_4=str;
dlg.m_5=str;
dlg.m_6=str;
dlg.DoModal();

*pResult = 0;
}
我把数值取出来以后,只有一个变量str,那么这样的话另外的对话框3个位置数值都是一样,那该怎么办?

回复

使用道具 举报

千问 | 2010-8-1 21:33:42 | 显示全部楼层
1.按照下面的操作是可以按行插入的:int nItem = m_List.InsertItem(0, "test");m_List.SetItem(nItem, 1, LVIF_TEXT, "test1", 0, 0, LVIS_SELECTED, LVIS_SELECTED);m_List.SetItem(nItem, 2, LVIF_TEXT, "test2", 0, 0, LVIS_SELECTED, LVIS_SELECTED);2。删除的话:用m_List.DeleteAllItems()3.鼠标指定的删除:只能取得当前被选中项的索引号,然后用索引号删除void CXXXXDlg::OnNMDblclkLi
回复

使用道具 举报

千问 | 2010-8-1 21:33:42 | 显示全部楼层
用DeleteAllItems()直接删除全部条目,鼠标指定删除要响应 ON_NOTIFY(NM_CLICK, IDC_LIST_ITEM, &CLIBSYSView::OnNMClickListItem)这个消息,得到左击的条目,再弹出菜单可以来删除这个条目,要的话我这有个示例
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行