MFC中获取主窗口指针

MFC TabControl插件 非对话框类中获得主窗口和子窗口的指针 前言 在非对话框类中无法使用如(CParentDlg*)或者(CChildDlg*)进行强制转换。 所以一般通过一下来代码来实现通过获取CParentDlg的指针进行操作: CWnd* m_pParentDialog = AfxGetApp()->m_pMainWnd; //Get parent dialog pointer directly CEdit* pEdit = (CEdit*)m_pParentDialog->GetDlgItem(/*Edit Item ID*/); pEdit-& 阅读详情
MFC中获取主窗口指针
2010/07/14 14:44
作者:Gods_巨蚁

AfxGetMainWnd


CWnd* AfxGetMainWnd( );

返回值:

如果服务器具有一个可以在容器内现场激活的对象,并且这个容器是活动的,则这个函数返回一个指向包含这个现场活动文档的框架窗口对象的指针。
如果没有可以在容器内现场激活的对象,或者你的应用程序不是一个OLE服务器,这个函数仅返回你的应用程序对象的m_pMainWnd。
如果AfxGetMainWnd被应用程序主线程调用,它根据以上规则返回应用程序的主窗口。如果该函数被应用程序的次线程调用,该函数返回与引起该调用线程连接的主窗口。

说明:

如果你的应用程序是一个OLE服务器,应该调用这个函数以获得应用程序的活动主窗口指针,而不是直接引用应用程序对象的m_pMainWnd成员。
如果你的应用程序不是OLE服务器,那么调用这个函数与直接引用应用程序对象的 m_pMainWnd成员是等价的。



以上是MSDN中的说明,看字体颜色为红色的那句话,如果你不是在主线程中调用 AfxGetMainWnd(),那么你就得不到程序的主窗口,正如我现在做的一个程序中用到的UI线程

所以,在非主线程中获得主窗口指针,可以通过下列语句
AfxGetApp()->m_pMainWnd

 

MFC实现获取进程信息(附完整源码) 阅读详情

相关推荐

VC++获得主窗口指针的方法

其中包含了VC++获得主窗口指针的方法,里面说的很清楚,大家可以参考学习。

Afx全局函数及MFC常见数据类型

介绍Afx全局函数及MFC常见数据类型 正文AfxBeginThread:开始一个新的线程AfxEndThread:结束一个旧的线程AfxFormatString1:类似printf一般地将字符串格式化AfxFormatString2:类似printf一般地将字符串格式化AfxMessageBox:类似Windows API 函数 MessageBoxAfxOuputDebugString:将

1116

模态对话框获取主窗口指针

采用MFC编程时,子对话框常常要向主窗口传递数据,获取主窗口的对象指针便显得非常重要了。 void CMyView::OnModel() //点击菜单,创建对话框的几种变量设置,总共是4种方法,模态的一种,非模态的三种 { // TODO: Add your command handler code here //CDialog modDlg(MAKEINTRESOURCE(IDD_MODEL),this); //modDlg.DoModal(); static bool num=0;//第一次执行第一段,以后再打开都执行第二段。 static CModDlg Dlgless(this);//将MyView指针传进去 if (0==num) { CModDlg mod(this);//将MyView指针传进去 //mod.SetWindowText("局部变量——模态对话框");不允许动态设置模态对话框标题?这句编绎会出错 mod.DoModal(); Dlgless.Create(IDD_MODEL);//重复执行会出错,要放到构造函数中好 Dlgless.ShowWindow(SW_SHOW); Dlgless.SetWindowText("局部静态变量——非模对话框"); m_dlgless.Create(IDD_MODEL,this);//重复执行会出错,要放到构造函数中好 m_dlgless.ShowWindow(SW_SHOW); m_dlgless.SetWindowText("成员非指针变量——非模对话框"); m_pDlgless=new CModDlg(this);//重复执行会出错,要放到构造函数中好, m_pDlgless->Create(IDD_MODEL);//重复执行会出错,要放到构造函数中好, m_pDlgless->ShowWindow(SW_SHOW); m_pDlgless->SetWindowText("成员指针变量——非模对话框"); num=1; } else { Dlgless.ShowWindow(SW_SHOW); m_dlgless.ShowWindow(SW_SHOW); m_pDlgless->ShowWindow(SW_SHOW); } }

MFC中的主窗口以及如何通过代码找到主窗口

在MFC程序中,可以设置主窗口,主窗口在应用程序类中设置,即设置应用程序类(通常以App结尾,通常包括。设置主窗口,但是该值可以由我们自行修改。主窗口设置之后,可以通过代码来找到主窗口。方法的类),然后通过其成员找到主窗体的指针。一般在MFC工程建立之后,在应用程序类的。函数找到MFC的应用程序类(通常包括。属性,将其设置为主窗口的指针。方法中,会生成代码通过。

YoseZang的博客 1194

VC++获得主窗口指针的方法示例代码

摘要:VC/C++源码,界面编程,窗口指针  VC++获得主窗口指针的方法示例代码,获得pMainWnd的值,VC++指针示例代码。

飞书云文档API实战:从权限申请到自动化操作

本文详细介绍了飞书云文档API的实战应用,从权限申请到自动化操作。内容涵盖如何创建应用、获取关键API权限、理解并使用Tenant Access Token,并通过Python代码示例演示了读取和写入飞书表格数据的具体方法,旨在帮助开发者和业务人员实现文档数据处理的自动化,提升工作效率。

weixin_28318011的博客 1939

MFC获取主窗口指针

CsystemDlg* pDlg = (CsystemDlg*)AfxGetApp()->m_pMainWnd; //得到主窗口的指针接下来就可以访问主窗类中的数据了

琅嬛福地 574

vLLM 多机多卡推理测试与验证(Kubernetes)vLLM 多机多卡推理 Kubernetes 验证

本文记录在两台 L20 机器,每台机器 4 块 L20 显卡(46G)的环境下,使用 vLLM 部署 Qwen2.5-32B-Instruct-GPTQ-Int4 模型并提供多节点多卡推理服务的过程。服务(Serving)模型服务是指将模型部署到生产环境中,通过 API 或其他接口提供预测服务的过程。【分布式推理与服务】(Distributed Inference and Serving)是指在多个机器或设备之间部署和管理机器学习模型,以高效地处理推理请求并满足大规模服务需求。3、启动 vLLM 服务。

流水_鱼鱼的博客 3459

Qt/MFC获取主窗口的指针

在不同的窗口类中,不同的类之间需要互相访问,有时需要知道另一个窗口类的指针来调用他的函数,本文介绍两种方法,如下: //Qt //方法1 WId ir = (WId)FindWindow(NULL, L"Target"); className *pM = (className*)find(ir); pM->method(); //方法2 className*pM; foreach(QWidget *w, qApp->topLevelWidgets())

hanxiaoyong_的博客 1646

基于ADS1299的8通道脑电采集系统硬件设计实战

生物电信号采集是医疗电子与可穿戴设备中的关键环节,微弱信号的高保真放大与数字化处理直接影响系统性能。高精度模数转换器与低噪声模拟前端设计成为工程实践的核心。ADS1299作为专用生物电测量芯片,集成多通道低噪声放大器与24位Δ-Σ ADC,广泛应用于脑电、心电等生理信号检测。本文基于ADS1299构建8通道脑电采集系统,详细阐述硬件架构、电源与参考设计、输入保护、PCB布局布线、固件SPI配置及数据读取,并结合实测数据分享噪声抑制与调试经验,为EEG采集设备开发提供完整参考。

weixin_29169505的博客 224

银河麒麟服务器操作系统V10 SP1:跨架构激活与设备更换无忧指南

本文详细解析了银河麒麟服务器操作系统V10 SP1的跨架构激活新特性。该特性彻底解除了授权与CPU架构的绑定,允许同一份授权在x86、ARM、龙芯等不同架构服务器间灵活使用。文章提供了从新设备激活到硬件更换后保持激活状态的全流程实战指南,并分享了内网环境部署等高级技巧,助力企业简化运维、提升硬件资源管理灵活性。

ff678的博客 348

MFC 获取对话框的指针

对于MFC的对话框,要对其操作必须先获取到它的对象指针,下面是对对话框的对象指针的获取方式的解读 1.获取主窗口的对话框的对象指针 CWnd* pWnd = AfxGetApp()->GetMainWnd(); 2.获取指定对话框的对象指针 CWnd* pWnd = FindWindow(NULL, _T("对话框的名称")); 3.ID , 指针, 句柄三者的转化 ID...

2730

节卡Jaka Zu APP编程避坑指南:从频繁通讯错误到稳定Socket交互的调试心得

本文详细解析了节卡Jaka Zu APP编程中常见的通讯错误问题,并提供了从基础排查到高级调试的完整解决方案。通过优化网络配置、固件匹配、心跳机制和数据交互规范,开发者可实现稳定的Socket通讯,有效提升工业机器人操控的可靠性。文章特别针对v1.6.7.3版本的典型问题给出了实用调试技巧。

weixin_42639633的博客 321

MFC中各种指针的获取

MFC中各种指针的获取   VC中编程对于刚刚开始学习的同学,最大的障碍和问题就是消息机制和指针获取与操作。其实这些内容基本上是每本VC学习工具书上必讲的内容,而且通过MSDN很多问题都能解决。一般我们使用的框架是VC提供的Wizard生成的MFC   App   Wizard(exe)框架,无论是多文档还是单文档,都存在指针获取和操作问题。下面这节内容主要是一般的框架,然后再讲多线程中的指针

artmcu的专栏 618

ResNet改进(45):结合通道混洗(ShuffleNet)的混合架构

本文提出了一种创新的卷积神经网络(CNN)架构CustomResNet,它将ResNet34与通道混洗(ChannelShuffle)技术相结合。该模型通过ShuffleBlock模块替换原始ResNet层,包含三个核心组件:1) ChannelShuffle模块实现通道分组混洗;2) ShuffleBlock模块整合点卷积、分组卷积和残差连接;3) CustomResNet主模型保持ResNet整体架构但替换核心层为ShuffleBlock。这种设计既保留了ResNet的残差学习能力,又通过通道混洗增强特

2401_82355416的博客 210

结构函数详解

C3M系列覆盖从1 kW到60 kW功率范围,器件Rdson低、开关速度快(Eon/Eoff低),支持高温工作(结温高达175–225°C)。型号电压 (V)Rdson (mΩ, 典型@25°C)电流 (A, 连续@25°C)封装类型典型应用功率 (kW)65012022TO-247-41–106506035TO-247-35–2065060355–2012002180TO-247-310–40120016100TO-247-420–601200。

专注于前沿技术的探索与实践,热衷于从代码逻辑、架构设计到行业应用等多维度深挖技术本质。期待在技术之路上与你共同成长~ 152

MFC中Doc,View,MainFrmae,App各指针的互相获取

MFC中Doc,View,MainFrmae,App各指针的互相获取   1)   在View中获得Doc指针     2)   在App中获得MainFrame指针     3)   在View中获得MainFrame指针     4)   获得View(已建立)指针     5)   获得当前文档指针     6)   获得状态栏与工具栏指针    

Jiwei的专栏 697

写给开发人员的实用密码学 - Hash算法

说到Hash(哈希),开发人员应该不陌生,比如Hash表是一种非常常用的数据结构,通过Hash表能够根据键值快速找到数据。哈希函数将文本(或其他数据)映射为整数,从而能够提高检索效率。密...

云水木石 1503

实例1.2:获得应用程序主窗口指针

主窗口指针保存在CWinThread::m_pMainWnd中,可以先调用AfxGetApp函数获得应用程序的指针,然后通过应用程序的指针获得其主窗口的指针。 //获得应用程序指针 CMy1_2App* pApp = (CMy1_2App*)AfxGetApp(); //获得主窗口指针 CWnd* pMainWnd = pApp->m_pMainWnd; CS...

weixin_30408309的博客 140

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

MFC获得当前窗口,主窗口,应用程序app指针

添加两个按钮 当前窗口的指针就是当前窗口的地址 void CpointdemoDlg::OnBnClickedButton1() { //获取当前窗口的指针, HWND hWnd = GetSafeHwnd(); CWnd* pWnd = CWnd::FromHandle(hWnd); CString s; s.Format(_T("pWnd=0x%X\nthis = 0x%X\n"),pWnd,this); AfxMessageBox(s); } void CpointdemoDl..

这里是菠萝味菠萝啤的博客 1810

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

MFC 中获取各种类指针的方法

各种指针如下 : 1) 在 View 中获得 Doc 指针  2) 在 App 中获得 MainFrame 指针  3) 在 View 中获得 MainFrame 指针  4) 获得 View (已建立)指针  5) 获得当前文档指针  6) 获得状态栏与工具栏指针  7) 获得状态栏与工具栏变量  8) 在 Mainframe 获得菜单指针  9) 在任何类中获得应用程序类

赤龙绕月的专栏 799

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

MFC获得主窗口和父窗口指针

MFC编程中常常遇到子窗口向父窗口传递参数的情况,这就需要获得父窗口的指针。         例:主对话框CMyMainDlg通过按钮ButtonA进入对话框CMyParentDlg,CMyParentDlg在通过按钮ButtonB进入对话框CMyChildDlg。现在需要在CMyChildDlg分别访问CMyParentDlg和CMyMainDlg的内容,需要在CMyChildDlg中加入以下

3291

024.讲MFC_窗口指针

窗口指针通过HWND获得CWnd指针        //如何通过窗口句柄获得窗口指针获得应用程序主窗口的指针      //如何获得应用程序主窗口的指针一、建立名为dialogPoint的mfc工程,添加两个button双击button1进入dialogPointDlg.cpp添加void CdialogPointDlg::OnBnClickedButton1(){ // TO...

weixin_30376163的博客 220
上一篇: VC2005: 无法执行添加/移除操作,因为代码元素是只读的....多个解决办法
下一篇: 等待线程结束
WaveYang
博客等级 码龄22年 14粉丝 13原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值