MFC若干小问题解决方案(1)

一、在浮动面板中动态创建CButton之后,按钮初始状态变灰的问题

afx_msg void OnUpdateBtn(CCmdUI* pCmdUI);

ON_UPDATE_COMMAND_UI(IDC_BROWSER,  &ImageInfoView::OnUpdateBtn)

void ImageInfoView::OnUpdateBtn(CCmdUI* pCmdUI)   

{      
    pCmdUI->Enable(true);
}

二、CMFCPropertyGridCtrl控件滚动到指定位置

WPARAM wparam = MAKEWPARAM(SB_THUMBPOSITION, pos);    
pList.SendMessage(WM_VSCROLL, wparam, 0);

三、CMFCPropertyGridCtrl控件没有子属性点击事件

1、新建一个子类CMFCPropertyGridCtrlEX继承CMFCPropertyGridCtrl

2、声明和定义子属性点击事件的消息

extern UINT AFX_WM_PROPERTY_COMMAND_CLICKED;
UINT AFX_WM_PROPERTY_COMMAND_CLICKED = ::RegisterWindowMessage(_T("AFX_WM_PROPERTY_COMMAND_CLICKED"));

3、响应WM_LBUTTONUP消息

afx_msg void OnLButtonUp(UINT nFlags, CPoint point);
ON_WM_LBUTTONUP()      
void CMFCPropertyGridCtrlEx::OnLButtonUp(UINT nFlags, CPoint point) 
{
     CMFCPropertyGridCtrl::OnLButtonUp(nFlags, point);
     CMFCPropertyGridProperty* pProp =  HitTest(point); 
     if (pProp)
     {
         GetOwner ()->SendMessage(AFX_WM_PROPERTY_COMMAND_CLICKED, GetDlgCtrlID (), LPARAM(pProp));
     }
}

4、然后就可以像AFX_WM_PROPERTY_CHANGED事件一样监听了

ON_REGISTERED_MESSAGE(AFX_WM_PROPERTY_COMMAND_CLICKED, &ImageInfoView::OnPropertyClicked)
LRESULT ImageInfoView::OnPropertyClicked(WPARAM wParam, LPARAM lParam)
{
     CMFCPropertyGridProperty* pProp = (CMFCPropertyGridProperty*)lParam;
     if (pProp)
     {
         //do something
     }
     return 0;
}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Windows Community

Windows Community Toolkit 3.0 - UniformGrid

UniformGrid 控件是一个响应式的布局控件,允许把 items 排列在一组均匀分布的行或列中,以填充整体的可用显示空间,形成均匀的多个网格。默认情况下,...

1302
来自专栏九彩拼盘的叨叨叨

Markdown 使用参考h1

Markdown是一种易读易写的标记语言。它能被生成HTML。Markdown的目标是:成为一种适用于网络的书写语言。

1034
来自专栏数据结构与算法

菜鸡博客开……开……开源了!

因为很多人找我要过博皮源码,所以本宝宝经过深思熟虑,最终决定把自己的源码分享给大家!

1624
来自专栏Golang语言社区

转--Golang语言版 ssh口令破解工具

使用说明: ? iplist的格式为ip:port,如111.111.111.111:22 user.txt为用户名字典 password.txt为密码字典 g...

3147
来自专栏菩提树下的杨过

ExtJs学习笔记(7)_获取GridPanel选中行的详细信息

这一节,我们将学习如何获取Grid当前选中行的信息 1.xml数据源内容: <?xml version="1.0" encoding="UTF-8"?> <D...

22410
来自专栏Java后端技术

一套简约漂亮的响应式博客园主题皮肤分享给你们

  最近在自己博客园逛的时候,总会有一个感觉,真是太丑了,然而又觉得自己暂时抽不出太多的时间来搭建自己的博客系统,上网一搜才发现,原来我们可以自定义博客的布局以...

1483
来自专栏九彩拼盘的叨叨叨

CSS 字体介绍

选择合适的字体,对提高网页的美观度和可读性有着举足轻重的作用。本文简要介绍了 CSS 中与字体相关的知识。

1353
来自专栏進无尽的文章

实践 -实现一款中间凸起的TabBar

这是看到一篇文章后感觉很有意思于是就把自己的效果改了改实现了一下,文末有原文链接。

1732
来自专栏每日一篇技术文章

SceneKit_入门06_行为动画

a.移动相对于当前位置 + (SCNAction *)moveByX:(CGFloat)deltaX y:(CGFloat)deltaY z:(CGFloat...

1631
来自专栏非典型技术宅

iOS动画系列之五:基础动画之缩放篇&旋转篇Swift+OC1. 思路和最终成果2. 抽取公共方法3. 懒加载Layer4. 添加动画

1551

扫码关注云+社区

领取腾讯云代金券