CListCtrl

From
Stas Khatsko (2:5080/220)
To
All ()
Date
2003-04-03T17:43:48Z
Area
SU.WINDOWS.NT.PROG
Привет, All.

В диалоге есть CListCtrl, который создан в OnInitDialog (не в ресурсах).
Несколько столбцов, много строк.

Теперь нужно при щелчке в определенные ячейки производить разные действия.
В OnNotify определяю через структуру pdi->item iItem и iSubItem нужные координаты ячейки, но.. pdi->item.iSubItem почему-то всегда равно нулю..

Вот OnNotify:

=== Начало Windows Clipboard ===
BOOL COptionsDlg::OnNotify(WPARAM wParam, LPARAM lParam, LRESULT* pResult)
{
 // TODO: Add your specialized code here and/or call the base class

 NMHDR *nmhdr = (NMHDR *)lParam;

 if (nmhdr->hwndFrom == m_list.m_hWnd)
 {

 LV_DISPINFO *pdi = (LV_DISPINFO *)lParam;
 switch (nmhdr->code)
 {

 case NM_CLICK:
  {
   char t[10];

   itoa(pdi->item.iItem, t,10);
   AfxMessageBox(t);

   itoa(pdi->item.iSubItem, t,10);
   AfxMessageBox(t);

  }
 }
 }

 return CDialog::OnNotify(wParam, lParam, pResult);
}
=== Конец Windows Clipboard ===

Из-за чего это может происходить?

В MSDN есть пример через отлов сообщения LVN_GETDISPINFO и переопределения,
но это не подходит, т.к. CListControl должен создаваться в InitDialog а не в ресурсах. (или как тогда его отловить в этом случае?)

Elvis.                                                mailto:elvis(_at_)beep.ru

---
 * Origin: Elvis Station, Ekaterinburg, Russia (2:5080/220)