Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.12.2008, 19:15   #1
sht0p0r
Пользователь
 
Регистрация: 01.12.2008
Сообщений: 14
По умолчанию ListView

Не отображаются столбцы и их названия.
Цитата:
GetClientRect(hwnd,&rc);
InitCommonControls();
hwndList1 = CreateWindowEx(0L, WC_LISTVIEW, "",
WS_VISIBLE | WS_CHILD | WS_BORDER | LVS_REPORT |
LVS_EDITLABELS,
2, 2, (rc.right-6)/2, rc.bottom-30,
hwnd, (HMENU)IDC_LISTVIEW1, ghInstance, NULL);
if (hwndList1 == NULL){MessageBox(NULL,"Cannot create ListView.","Error",MB_OK); return 0;}
hwndList2 = CreateWindowEx(0L, WC_LISTVIEW, "",
WS_VISIBLE | WS_CHILD | WS_BORDER | LVS_REPORT |
LVS_EDITLABELS,
4+(rc.right-6)/2, 2, (rc.right-6)/2, rc.bottom-30,
hwnd, (HMENU)IDC_LISTVIEW2, ghInstance, NULL);
if (hwndList2 == NULL){MessageBox(NULL,"Cannot create ListView.","Error",MB_OK); return 0;}
himlSmall1=ImageList_Create(GetSyst emMetrics(SM_CXSMICON),GetSystemMet rics(SM_CYSMICON),
ILC_MASK,9,1);
for(int i=0;i<9;i++){
hIcon=LoadIcon(ghInstance, MAKEINTRESOURCE(IDR_ICO_MAIN));
ImageList_AddIcon(himlSmall1,hIcon) ;
}
ListView_SetImageList(hwndList1,him lSmall1, LVSIL_SMALL);
memset(&lvc,0,sizeof(lvi));
lvc.mask = LVCF_FMT | LVCF_WIDTH | LVCF_TEXT | LVCF_SUBITEM;
lvc.fmt = LVCFMT_LEFT;
lvc.cx = ((rc.right-6)/2) / 4;

lvc.iSubItem = 0;
lvc.pszText = "Application Name";
ListView_InsertColumn(hwndList1, 0, &lvc);

lvc.iSubItem = 1;
lvc.pszText = "Icon Name";
ListView_InsertColumn(hwndList1, 1, &lvc);

lvc.iSubItem = 2;
lvc.pszText = "Cost, USD";
ListView_InsertColumn(hwndList1, 2, &lvc);
ListView_SetColumnWidth(hwndList1,2 ,(rc.right-6)/16);
memset(&lvi, 0, sizeof(lvi));

lvi.mask = LVIF_IMAGE | LVIF_TEXT | LVIF_PARAM;
lvi.pszText = LPSTR_TEXTCALLBACK;

for(int i=0; i<9; i++)
{
lvi.iItem = i;
lvi.iSubItem = 0;
lvi.cchTextMax = 40;
lvi.lParam = (LPARAM)"qwe";

lvi.iImage = i;
ListView_InsertItem(hwndList1, &lvi);

lvi.iItem = i;
lvi.iSubItem = 1;
ListView_InsertItem(hwndList1, &lvi);

lvi.iItem = i;
lvi.iSubItem = 2;
ListView_InsertItem(hwndList1, &lvi);
}
sht0p0r вне форума Ответить с цитированием
Старый 15.12.2008, 23:33   #2
sht0p0r
Пользователь
 
Регистрация: 01.12.2008
Сообщений: 14
По умолчанию

Чтобы отображались столбцы, нужно обрабатывать сообщение WM_NOTIEFY???
sht0p0r вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ListView aesoem Общие вопросы Delphi 4 05.07.2008 15:55
ListView Старовъръ Компоненты Delphi 8 02.07.2008 19:08
ListView Witaliy Общие вопросы Delphi 1 01.05.2008 20:46
ListView Terran Общие вопросы Delphi 2 05.04.2008 23:15
ListView Garacio Компоненты Delphi 1 17.12.2006 15:30