zoukankan      html  css  js  c++  java
  • CMFCPropertyGridCtrl的属性改变事件代码

    //用于区分Prop, 使用SetData, GetData方法
    CMFCPropertyGridProperty* pProp1 = new CMFCPropertyGridProperty(strTitle, (_variant_t)bVal, strDesc);
    pProp1->SetData(100);
    int nPropId = pProp1->GetData();
     
     

    //声明消息处理函数

    afx_msg LRESULT OnPropertyChanged( WPARAM wParam,LPARAM lParam );

    //注册消息, AFX_WM_PROPERTY_CHANGED:发送ctrl消息到父窗口

    BEGIN_MESSAGE_MAP(CMyWnd, CWnd)
     ON_WM_PAINT()
     ON_WM_CREATE()
     ON_REGISTERED_MESSAGE(AFX_WM_PROPERTY_CHANGED, OnPropertyChanged)
    END_MESSAGE_MAP()

    //消息处理, lParam是Property属性项, wParam是ctrl的id

    LRESULT CMyWnd::OnPropertyChanged( WPARAM wParam,LPARAM lParam )
    {
     CMFCPropertyGridProperty* pProp = (CMFCPropertyGridProperty*) lParam;

     //is the property ctrl
     if ( (long)wParam == 2 )
     {
      
     }

     pProp->SetValue((_variant_t)false);
     pProp->Redraw();
     int pID = pProp->GetData();
     CString str = pProp->GetName();
     if ( str == _T("abc") )
     {
      COleVariant var = pProp->GetValue();
      if ( var.boolVal == VARIANT_TRUE )
      {
      // AfxMessageBox(L"failed!");
       
       //pProp->SetValue(VARIANT_FALSE);
      }
     }

     if  (pID == 1)
     {
      
     }

     if  (pID > 1)
     {
      
     }
     return 0;
    }

  • 相关阅读:
    win10系统全角半角切换
    出差(3~十六)
    问题在于读书不多而想的太多
    出差(3~十五)
    感恩
    hibernate--联合主键--XML
    hibernate--ID生成策略--XML
    hibernate--ID生成策略--annotation
    Hibernate---基础配置
    Hibernate---基础配置之日志信息slf 及搭建日志环境
  • 原文地址:https://www.cnblogs.com/ccjt/p/4463331.html
Copyright © 2011-2022 走看看