PropertyGrid_Defines.h 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. #pragma once
  2. // 属性表的通知消息处理
  3. /////////////////////////////////////////////////////////////////////////////
  4. // 属性表有事件发生时,向其物主窗口发送通知消息PGWM_PROPERTYGRID_NOTIFY。
  5. //
  6. // PGWM_PROPERTYGRID_NOTIFY
  7. // nGridAction = HIWORD(wParam); // 属性表的事件代码
  8. // nID = LOWORD(wParam); // 属性表的控件ID
  9. // pItem = (CPropertyGridItem*) lParam; // 跟事件关联的属性项对象指针
  10. //
  11. // 参数说明
  12. //
  13. // nGridAction
  14. // wParam参数的高字节部分,标识引发通知消息的属性表事件,可以为下列值之一:
  15. //
  16. // PGN_SORTORDER_CHANGED - 属性项排序发生改变.
  17. // PGN_SELECTION_CHANGED - 属性项被选中.
  18. // PGN_ITEMVALUE_CHANGED - 属性值被改变.
  19. //
  20. // pItem
  21. // lParam参数,是一个指向跟事件关联的属性项对象指针,如果事件是
  22. // PGN_SORTORDER_CHANGED,pItem等于NULL。
  23. //
  24. // 返回值
  25. // 如果消息得到处理,返回TRUE,否则返回FALSE。
  26. //
  27. // 以下是一个通知消息的处理例程
  28. //
  29. // int nGridAction = HIWORD(wParam);
  30. // int nID = LOWORD(wParam);
  31. // CPropertyGridItem* pItem = (CPropertyGridItem*)lParam;
  32. //
  33. // switch (nGridAction)
  34. // {
  35. // case PGN_SORTORDER_CHANGED:
  36. // {
  37. // m_nSort = m_wndPropertyGrid.GetPropertySort();
  38. // UpdateData(FALSE);
  39. // }
  40. // break;
  41. // case PGN_SELECTION_CHANGED:
  42. // {
  43. // TRACE(_T("Selection Changed. Item = %s\n"), pItem->GetCaption());
  44. // }
  45. // break;
  46. // case PGN_ITEMVALUE_CHANGED:
  47. // {
  48. // TRACE(_T("Value Changed. Caption = %s, ID = %i, Value = %s\n"),
  49. // pItem->GetCaption(), pItem->GetID(), pItem->GetValue());
  50. // }
  51. // break;
  52. // }
  53. // return TRUE;
  54. //
  55. const UINT PGWM_PROPERTYGRID_NOTIFY = (WM_APP + 2701); // 属性表的事件通知消息
  56. const UINT PGN_SORTORDER_CHANGED = 1; // 属性表事件 - 属性项排序发生改变
  57. const UINT PGN_SELECTION_CHANGED = 2; // 属性表事件 - 属性项被选中
  58. const UINT PGN_ITEMVALUE_CHANGED = 3; // 属性表事件 - 属性值被改变