CListCtrl *m_pmylist;
//设置Listctrl为报表形式
m_pmylist = (CListCtrl*)GetDlgItem(IDC_LIST1);
DWORD dwStyle = GetWindowLong(m_pmylist->m_hWnd, GWL_STYLE);
SetWindowLong( m_pmylist->m_hWnd, GWL_STYLE, dwStyle | LVS_REPORT);
//设置listctrl可以整行选择和网格条纹
DWORD styles = m_pmylist->GetExtendedStyle();
m_pmylist->SetExtendedStyle(styles|LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);
//给listctrl设置8个标题栏
TCHAR rgtsz[8][10] = {_T("航 班 号"),_T("起 点 站"),_T("终 点 站"),_T("班期"),_T("起飞时间"),_T("到达时间"),_T("机型"),_T("票价")};
LV_COLUMN lvcolumn;
CRect rect;
m_pmylist->GetWindowRect(&rect);
for(int i=0;i<8;i++)
{
lvcolumn.mask = LVCF_FMT | LVCF_SUBITEM | LVCF_TEXT
| LVCF_WIDTH | LVCF_ORDER;
lvcolumn.fmt = LVCFMT_LEFT;
lvcolumn.pszText = rgtsz[i];
lvcolumn.iSubItem = i;
lvcolumn.iOrder = i;
lvcolumn.cx = rect.Width()/6;
m_pmylist->InsertColumn(i, &lvcolumn);
}
//增加sl.recnum条记录
for (i=0;i<j;i++)
{
// Insert the item, select every other item.
m_pmylist->InsertItem(LVIF_TEXT|LVIF_STATE, i, sl.sl[array[i]].keys,
(i%j)==0 ? LVIS_SELECTED : 0, LVIS_SELECTED,0, 0);
// Initialize the text of the subitems.
m_pmylist->SetItemText(i, 1, sl.sl[array[i]].others.start);
m_pmylist->SetItemText(i, 2, sl.sl[array[i]].others.end);
m_pmylist->SetItemText(i, 3, sl.sl[array[i]].others.sche);
m_pmylist->SetItemText(i, 4, sl.sl[array[i]].others.time1);
m_pmylist->SetItemText(i, 5, sl.sl[array[i]].others.time2);
m_pmylist->SetItemText(i, 6, sl.sl[array[i]].others.model);
m_pmylist->SetItemText(i, 7, sl.sl[array[i]].others.price);
}
------------------------------------------------------------------------------
windows mobile上的
TCHAR rgtsz[1][10] = {_T("名称")};
InitListCtrl(GetDlgItem(hWnd,IDC_UNZIPLIST), rgtsz, 1);
InitListCtrl(GetDlgItem(hWnd,IDC_UNZIPLIST), rgtsz, 1);
void InitListCtrl(HWND hWnd, TCHAR (*rgtsz)[10], int size)
{
LV_COLUMN lvcolumn;
RECT rect;
GetWindowRect(hWnd, &rect);
for(int i = 0; i < size; i++)
{
lvcolumn.mask = LVCF_FMT | LVCF_SUBITEM | LVCF_TEXT
| LVCF_WIDTH | LVCF_ORDER;
lvcolumn.fmt = LVCFMT_LEFT;
lvcolumn.pszText = rgtsz[i];
lvcolumn.iSubItem = i;
lvcolumn.iOrder = i;
lvcolumn.cx = (rect.right - rect.left) / size;
ListView_InsertColumn(hWnd, i, &lvcolumn);
}
}
{
LV_COLUMN lvcolumn;
RECT rect;
GetWindowRect(hWnd, &rect);
for(int i = 0; i < size; i++)
{
lvcolumn.mask = LVCF_FMT | LVCF_SUBITEM | LVCF_TEXT
| LVCF_WIDTH | LVCF_ORDER;
lvcolumn.fmt = LVCFMT_LEFT;
lvcolumn.pszText = rgtsz[i];
lvcolumn.iSubItem = i;
lvcolumn.iOrder = i;
lvcolumn.cx = (rect.right - rect.left) / size;
ListView_InsertColumn(hWnd, i, &lvcolumn);
}
}
memset(&item, 0, sizeof(LVITEM));
item.mask = LVIF_TEXT | LVIF_STATE;
item.pszText = FindFileData.cFileName;
ListView_InsertItem(hWnd, &item);
item.mask = LVIF_TEXT | LVIF_STATE;
item.pszText = FindFileData.cFileName;
ListView_InsertItem(hWnd, &item);
选中
for(i=0;i < ListView_GetItemCount(hWnd);i++)
if(ListView_GetItemState(hWnd,i,LVIS_SELECTED)==LVIS_SELECTED)
{
break;
}
memset(buf, 0, sizeof(buf));
memset(tempBuf, 0, sizeof(tempBuf));
ListView_GetItemText(hWnd, i, 0, buf, sizeof(buf));
if(ListView_GetItemState(hWnd,i,LVIS_SELECTED)==LVIS_SELECTED)
{
break;
}
memset(buf, 0, sizeof(buf));
memset(tempBuf, 0, sizeof(tempBuf));
ListView_GetItemText(hWnd, i, 0, buf, sizeof(buf));