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)