在MFC中获取窗口\视图句柄 &获取当前活动的CView .

简介: 1 在多文档多视图的MFC架构中,要想获得当前选中的CView可重写CView::OnActivateView函数,如下: void OnActivateView(BOOL bActivate,              CView * pActivateView,              CV...

1 在多文档多视图的MFC架构中,要想获得当前选中的CView可重写CView::OnActivateView函数,如下:

void
OnActivateView(BOOL bActivate,
              CView * pActivateView,
              CView * pDeactiveView)
{
 if(bActivate)
 {
     SetEnable(TRUE);
 }
 else
 {
     SetEnable(FALSE);
 }

    CView::OnActivateView(bActivate,
                             pActivateView,
                     pDeactiveView);
}

 

2 获得窗口或者视图句柄

2.1 获得窗口句柄

 

要找到某个CWnd对象的HWND,用GetSafeHwnd()。

在窗口类中,有句柄的成员变量,可以直接访问:   m_hWnd   
在窗口类外,可以用AfxGetMainWnd()->m_hWnd获得。

在MainFrame里直接用this;   
其它地方用   CMainFrame*   pMainFrame   =   (CMainFrame*)theApp.m_pMainWnd;  

想得到一个控件的的句柄

GetDlgItem(ID…)->m_hWnd

 

2.2 获得视图的句柄

AfxGetMainWnd()->GetActiveView();

SDI:   ((CFrameWnd*)(AfxGetApp()->m_pMainWnd))->GetActiveView();     
MDI:   ((CFrameWnd*)(AfxGetApp()->m_pMainWnd))->GetActiveFrame()->GetActiveView();  

目录
相关文章
|
存储 算法 数据挖掘
带你读《Apache Doris 案例集》——06 Apache Doris 助力中国联通万亿日志数据分析提速10倍(2)
带你读《Apache Doris 案例集》——06 Apache Doris 助力中国联通万亿日志数据分析提速10倍(2)
412 1
|
10月前
|
Java 开发者 微服务
手写模拟Spring Boot自动配置功能
【11月更文挑战第19天】随着微服务架构的兴起,Spring Boot作为一种快速开发框架,因其简化了Spring应用的初始搭建和开发过程,受到了广大开发者的青睐。自动配置作为Spring Boot的核心特性之一,大大减少了手动配置的工作量,提高了开发效率。
177 0
|
域名解析 存储 缓存
【域名解析DNS专栏】DNS缓存机制详解:如何提升域名解析速度
【5月更文挑战第21天】本文探讨了DNS缓存机制的原理及优化方法。DNS缓存是存储已解析域名与IP地址的临时数据库,能减少网络延迟,减轻服务器负担并提升用户体验。优化策略包括增加缓存容量,设置合理过期时间,使用智能DNS服务及定期清理缓存。文中还提供了一个Python示例,展示如何通过缓存提升域名解析速度。
1439 2
【域名解析DNS专栏】DNS缓存机制详解:如何提升域名解析速度
|
12月前
|
编译器 API C语言
Cython 是什么?为什么会有 Cython?
Cython 是什么?为什么会有 Cython?
318 0
|
11月前
|
供应链 监控 数据挖掘
淘宝商品详情数据接口:解锁电商数据分析新密码
在数字化时代,电商竞争激烈,精准的数据分析成为制胜关键。淘宝商品详情数据接口如同一把神奇的钥匙,为商家提供商品名称、价格、销量、评价等详细信息,助力洞察市场趋势、优化商品策略、提升运营效率。通过实时更新的数据,商家可以及时调整定价、促销和库存管理,增强竞争力。未来,该接口将带来更多智能化的数据分析工具和精准的市场预测模型,助力电商从业者在竞争中脱颖而出。
|
机器学习/深度学习 存储 数据可视化
特征选择的艺术:利用Scikit-learn提升模型性能
【7月更文第22天】在机器学习的实践中,特征选择是一项至关重要的步骤,它直接影响到模型的性能、训练速度以及对新数据的泛化能力。特征选择,或称为变量选择,旨在从原始特征集中识别并保留最相关、最有影响力的特征子集,同时剔除冗余或无关紧要的特征。本文将探讨特征选择的重要性,并通过使用Python中的Scikit-learn库演示几种有效的特征选择方法,以提升模型性能。
718 4
|
机器学习/深度学习 数据采集 算法
推荐引擎离线算法与在线算法的探索与实践
推荐引擎是现代互联网产品中至关重要的组成部分。离线算法和在线算法分别负责处理大量数据的预处理和模型训练,以及快速响应用户的实时请求。通过合理的架构设计和算法选择,可以构建出高效且个性化的推荐系统,从而提升用户体验,增加用户满意度和留存率。未来,随着技术的发展,推荐引擎将更加智能化和个性化,为用户提供更加精准的服务。
|
SQL 关系型数据库 MySQL
Mysql:如何自定义导出表结构
通过以上方法,你可以灵活地自定义导出MySQL中的表结构,以满足不同的需求和场景。在进行操作的时候要注意权限问题以及路径问题,确保MySQL用户有权限写入指定的文件路径。在执行导出任务之前,还应确保你对数据库及其内容有足够的了解,以避免不必要的数据丢失或损坏。
277 1
|
JavaScript 前端开发 API
如何利用Python的Flask框架与Vue.js创建RESTful API服务
【4月更文挑战第10天】本文介绍了如何使用Flask和Vue.js创建一个前后端分离的RESTful API服务。Flask作为后端框架,负责提供CRUD操作,与SQLite数据库交互;Vue.js作为前端框架,构建用户界面并利用axios库与后端API通信。通过示例代码,展示了Flask设置路由处理用户数据以及Vue组件如何调用API获取和操作数据。此基础结构为构建更复杂的Web应用提供了起点。
438 4
|
C语言
【用C语言轻松实现】- 扫雷【超详细教程】
【用C语言轻松实现】- 扫雷【超详细教程】