关于bcg组件中CBCGPPropList的消息传递问题

lihaowei2028 2008-04-17 05:26:40
我用BCG库在多文档程序中 生成一个浮动窗口CPropertyManager(它继承自CBCGPDockingControlBar),然后在这个窗口中生成一个 属性列表 CExtendProPage (它继承CBCGPPropList) 当属性列表中的 改变某一项的属性值时,CBCGPPropList类的OnPropertyChanged函数会发送一个消息,代码是:
GetOwner ()->SendMessage (BCGM_PROPERTY_CHANGED, GetDlgCtrlID(),LPARAM (pProp));

我想在 CPropertyManager 中接收它 我在 CPropertyManager中 创建一个函数 :
afx_msg LONG OnPropChanged(WPARAM wParam, LPARAM lParam);

然后用 ON_REGISTERED_MESSAGE(BCGM_PROPERTY_CHANGED,OnPropChanged) 来响应这个函数

可为什么一点反应都没有呢? 望高手赐教~~~不胜感激
...全文
156 点赞 收藏 8
写回复
8 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
bigwoodwood99 2009-01-13
这个问题我刚解决(注意红色文字)

在"PropertyManager.h"中增加
//{{AFX_MSG(BarOption)
afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
afx_msg void OnSize(UINT nType, int cx, int cy);
afx_msg void OnPropertyChanged(WPARAM wParam, LPARAM lParam);
//}}AFX_MSG
DECLARE_MESSAGE_MAP()

在"PropertyManager.cpp"中增加,

BEGIN_MESSAGE_MAP(CPropertyManager, CBCGPDockingControlBar)
//{{AFX_MSG_MAP(CPropertyManager)
ON_WM_CREATE()
ON_WM_SIZE()
//}}AFX_MSG_MAP
ON_REGISTERED_MESSAGE(BCGM_PROPERTY_CHANGED, OnPropertyChanged)
END_MESSAGE_MAP()

void CPropertyManager::OnPropertyChanged(WPARAM wParam, LPARAM lParam)
{
MessageBox("I am here","OK",MB_OK);
}

请多给分哦!
回复
lihaowei2028 2008-04-21
没有人能解决一下吗?
回复
scq2099yt 2008-04-18
up
回复
lihaowei2028 2008-04-18
能否讲的详细点。

我现在在 CExtendProPage 里重载了OnPropertyChanged 函数(发送消息函数) , 可是用GetParent依然传到的是TabWnd 我应该怎么处理才能把这个消息传递到 CPropertyManager呢
回复
ToperRay 2008-04-18
GetOwner()

你把消息传到它的返回值了,你需要在那个类里处理这个消息
回复
lihaowei2028 2008-04-18
哦 我是在 浮动窗口CPropertyManager下 创建了两个 TabWnd(继承自CBCGTabWnd) 然后在每个TabWnd下 各自创建一个属性列表 GetOwner() 好像得到了 TabWnd , 没有传到 CPropertyManager 下。 如果我把GetOwner改成GetParent() 能不能把消息传递到 CPropertyManager 上呢?
回复
lihaowei2028 2008-04-18
自己顶一下
回复
ToperRay 2008-04-17
GetOwner ()的到的是什么?

是CPropertyManager 吗?

回复
相关推荐
发帖
VC/MFC
创建于2007-09-28

1.5w+

社区成员

VC/MFC相关问题讨论
申请成为版主
帖子事件
创建了帖子
2008-04-17 05:26
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……