MFC子窗口操作另一个子窗口的问题啊 [问题点数:50分]

Bbs1
本版专家分:0
结帖率 0%
Bbs1
本版专家分:0
Bbs10
本版专家分:166898
Blank
红花 2018年7月 VC/MFC大版内专家分月排行榜第一
2017年10月 VC/MFC大版内专家分月排行榜第一
2016年3月 VC/MFC大版内专家分月排行榜第一
2014年10月 VC/MFC大版内专家分月排行榜第一
2014年9月 VC/MFC大版内专家分月排行榜第一
2014年7月 VC/MFC大版内专家分月排行榜第一
2014年6月 VC/MFC大版内专家分月排行榜第一
2014年5月 VC/MFC大版内专家分月排行榜第一
2014年4月 VC/MFC大版内专家分月排行榜第一
2014年2月 VC/MFC大版内专家分月排行榜第一
2013年7月 VC/MFC大版内专家分月排行榜第一
Blank
黄花 2018年10月 VC/MFC大版内专家分月排行榜第二
2018年9月 VC/MFC大版内专家分月排行榜第二
2018年8月 VC/MFC大版内专家分月排行榜第二
2018年5月 VC/MFC大版内专家分月排行榜第二
2017年12月 VC/MFC大版内专家分月排行榜第二
2017年6月 VC/MFC大版内专家分月排行榜第二
2017年5月 VC/MFC大版内专家分月排行榜第二
2017年1月 VC/MFC大版内专家分月排行榜第二
2016年11月 VC/MFC大版内专家分月排行榜第二
2016年4月 VC/MFC大版内专家分月排行榜第二
2014年11月 VC/MFC大版内专家分月排行榜第二
2014年1月 VC/MFC大版内专家分月排行榜第二
2013年10月 VC/MFC大版内专家分月排行榜第二
2013年9月 VC/MFC大版内专家分月排行榜第二
2013年6月 VC/MFC大版内专家分月排行榜第二
2013年4月 VC/MFC大版内专家分月排行榜第二
2012年6月 VC/MFC大版内专家分月排行榜第二
Blank
蓝花 2018年11月 VC/MFC大版内专家分月排行榜第三
2018年6月 VC/MFC大版内专家分月排行榜第三
2018年4月 VC/MFC大版内专家分月排行榜第三
2018年3月 VC/MFC大版内专家分月排行榜第三
2018年2月 VC/MFC大版内专家分月排行榜第三
2018年1月 VC/MFC大版内专家分月排行榜第三
2017年11月 VC/MFC大版内专家分月排行榜第三
2017年9月 VC/MFC大版内专家分月排行榜第三
2017年8月 VC/MFC大版内专家分月排行榜第三
2017年4月 VC/MFC大版内专家分月排行榜第三
2016年12月 VC/MFC大版内专家分月排行榜第三
2016年10月 VC/MFC大版内专家分月排行榜第三
2016年2月 VC/MFC大版内专家分月排行榜第三
2015年10月 VC/MFC大版内专家分月排行榜第三
2015年7月 VC/MFC大版内专家分月排行榜第三
2012年10月 VC/MFC大版内专家分月排行榜第三
Bbs1
本版专家分:0
Bbs10
本版专家分:166898
Blank
红花 2018年7月 VC/MFC大版内专家分月排行榜第一
2017年10月 VC/MFC大版内专家分月排行榜第一
2016年3月 VC/MFC大版内专家分月排行榜第一
2014年10月 VC/MFC大版内专家分月排行榜第一
2014年9月 VC/MFC大版内专家分月排行榜第一
2014年7月 VC/MFC大版内专家分月排行榜第一
2014年6月 VC/MFC大版内专家分月排行榜第一
2014年5月 VC/MFC大版内专家分月排行榜第一
2014年4月 VC/MFC大版内专家分月排行榜第一
2014年2月 VC/MFC大版内专家分月排行榜第一
2013年7月 VC/MFC大版内专家分月排行榜第一
Blank
黄花 2018年10月 VC/MFC大版内专家分月排行榜第二
2018年9月 VC/MFC大版内专家分月排行榜第二
2018年8月 VC/MFC大版内专家分月排行榜第二
2018年5月 VC/MFC大版内专家分月排行榜第二
2017年12月 VC/MFC大版内专家分月排行榜第二
2017年6月 VC/MFC大版内专家分月排行榜第二
2017年5月 VC/MFC大版内专家分月排行榜第二
2017年1月 VC/MFC大版内专家分月排行榜第二
2016年11月 VC/MFC大版内专家分月排行榜第二
2016年4月 VC/MFC大版内专家分月排行榜第二
2014年11月 VC/MFC大版内专家分月排行榜第二
2014年1月 VC/MFC大版内专家分月排行榜第二
2013年10月 VC/MFC大版内专家分月排行榜第二
2013年9月 VC/MFC大版内专家分月排行榜第二
2013年6月 VC/MFC大版内专家分月排行榜第二
2013年4月 VC/MFC大版内专家分月排行榜第二
2012年6月 VC/MFC大版内专家分月排行榜第二
Blank
蓝花 2018年11月 VC/MFC大版内专家分月排行榜第三
2018年6月 VC/MFC大版内专家分月排行榜第三
2018年4月 VC/MFC大版内专家分月排行榜第三
2018年3月 VC/MFC大版内专家分月排行榜第三
2018年2月 VC/MFC大版内专家分月排行榜第三
2018年1月 VC/MFC大版内专家分月排行榜第三
2017年11月 VC/MFC大版内专家分月排行榜第三
2017年9月 VC/MFC大版内专家分月排行榜第三
2017年8月 VC/MFC大版内专家分月排行榜第三
2017年4月 VC/MFC大版内专家分月排行榜第三
2016年12月 VC/MFC大版内专家分月排行榜第三
2016年10月 VC/MFC大版内专家分月排行榜第三
2016年2月 VC/MFC大版内专家分月排行榜第三
2015年10月 VC/MFC大版内专家分月排行榜第三
2015年7月 VC/MFC大版内专家分月排行榜第三
2012年10月 VC/MFC大版内专家分月排行榜第三
Bbs5
本版专家分:4733
Bbs10
本版专家分:125460
Blank
红花 2018年11月 VC/MFC大版内专家分月排行榜第一
2018年10月 VC/MFC大版内专家分月排行榜第一
2018年9月 VC/MFC大版内专家分月排行榜第一
2018年8月 VC/MFC大版内专家分月排行榜第一
2018年5月 VC/MFC大版内专家分月排行榜第一
2018年4月 VC/MFC大版内专家分月排行榜第一
2018年3月 VC/MFC大版内专家分月排行榜第一
2018年2月 VC/MFC大版内专家分月排行榜第一
2018年1月 VC/MFC大版内专家分月排行榜第一
2017年12月 VC/MFC大版内专家分月排行榜第一
2017年11月 VC/MFC大版内专家分月排行榜第一
2017年7月 VC/MFC大版内专家分月排行榜第一
2012年7月 VC/MFC大版内专家分月排行榜第一
Blank
黄花 2018年7月 VC/MFC大版内专家分月排行榜第二
2018年6月 VC/MFC大版内专家分月排行榜第二
2017年9月 VC/MFC大版内专家分月排行榜第二
2017年8月 VC/MFC大版内专家分月排行榜第二
2017年4月 VC/MFC大版内专家分月排行榜第二
2017年3月 VC/MFC大版内专家分月排行榜第二
2017年2月 VC/MFC大版内专家分月排行榜第二
2016年8月 VC/MFC大版内专家分月排行榜第二
2016年7月 VC/MFC大版内专家分月排行榜第二
2016年6月 VC/MFC大版内专家分月排行榜第二
2015年6月 VC/MFC大版内专家分月排行榜第二
Blank
蓝花 2017年10月 VC/MFC大版内专家分月排行榜第三
2017年6月 VC/MFC大版内专家分月排行榜第三
2017年5月 VC/MFC大版内专家分月排行榜第三
2016年9月 VC/MFC大版内专家分月排行榜第三
2016年4月 VC/MFC大版内专家分月排行榜第三
2015年4月 VC/MFC大版内专家分月排行榜第三
2012年8月 VC/MFC大版内专家分月排行榜第三
Bbs1
本版专家分:14
Bbs11
本版专家分:266089
版主
Blank
进士 2006年 总版技术专家分年内排行榜第四
Blank
金牌 2006年4月 总版技术专家分月排行榜第一
Blank
铜牌 2006年3月 总版技术专家分月排行榜第三
Blank
微软MVP 2014年1月 荣获微软MVP称号
2009年1月 荣获微软MVP称号
2013年1月 荣获微软MVP称号
2012年1月 荣获微软MVP称号
2010年1月 荣获微软MVP称号
2011年1月 荣获微软MVP称号
2006年1月 荣获微软MVP称号
2005年1月 荣获微软MVP称号
2008年1月 荣获微软MVP称号
2007年1月 荣获微软MVP称号
2004年1月 荣获微软MVP称号
Bbs5
本版专家分:2683
Bbs2
本版专家分:185
Bbs8
本版专家分:37630
Bbs4
本版专家分:1553
Bbs7
本版专家分:19750
其他相关推荐
关闭子窗口并结束子窗口中创建的子线程
我们在子窗口中创建一个子线程来执行耗时任务,但用户可能不想继续等待,在耗时任务结束之前就关闭了子窗口。这时会发现,虽然窗口关闭了,但是执行耗时任务的线程还在继续执行,这在大多数情况下是不合理的,而且占用系统资源,甚至会和其他进程发生冲突。下面有个方法可以在关闭子窗口时,将子线程也关闭掉。 一、添加一个窗口关闭的事件。 1.添加前台代码: Closed="ImportWindow_Close...
MFC多个子窗体覆盖
MFC多个子窗体覆盖
mfc 一个关于子窗口相互覆盖下的消息响应的问题
首先我简要描述下问题: 一个父窗口拥有多个子窗口(都有WS_CHILD属性),这些子窗口都是动态创建出来的, 当他们有交叉时,我们操作在上面的子窗口,上面的子窗口却无法响应,反而是下面的窗口 响应了次消息。 解决方案及步骤: 首先以为是窗口层次(即Z轴)的原因,于是通过调整窗口的层次,结果,还是没有解决问题。 其次 考虑到是窗口刷新的问题,于是网上搜索一些资料及查看MS
父窗口与子窗口切换在最前端
在父窗口创建窗体. IDD_NEW_DLG窗口, 不能是Child, 而应该是Popup CDialogEx->Create(IDD_NEW_DLG, this), 则此子窗口将一直保持在父窗口的前面 CDialogEx->Create(IDD_NEW_DLG, GetDesktopWindow()), 则此子窗口与父窗口可相互切换到最前
MFC中子窗口调用父窗口资源的方法
在MFC中经常需要在一个窗口中弹出另一个窗口,比如在文档视图主窗口中弹出一个对话框进行信息交互。 这种情况在实现中,一般父窗口的类成员中有一个子窗口类的对象指针。比如在需要弹出对话框时候,可以利用DoMadol函数弹出对话框。但是如果在子窗口中需要对父窗口进行操作,需要怎么做呢。 实例:在文档视图的父窗口中弹出一个非模态的子对话框,在改对话框中操作,可以实时改变父窗口中的显示。 步骤和方法如下
VS2010 MFC点击父窗口的按钮,弹出子窗口
MFC 点击一个对话框按钮弹出另一个对话框 vs2010中 1.在资源中添加一个对话框  右击Dialog | Insert dialog 2.在对话框上添加自己需要的按钮等控件 3.双击控件会出现一个对话框,为添加的对话框命名一个类名,例如Dlg2   自动生成.cpp和.h文件 4.在第一个对话框的.cpp文件中包含上面生成的那个.h文件 5.在第一个对话框
MFC操作父窗口的子控件
//使用SetDlgItemText CWnd* pDlg=GetParent(); if(pDlg) {     pDlg->SetDlgItemText(IDC_EDITADD,_T("测试edit")); } //使用GetDlgItem CWnd* pDlg=GetParent(); if(pDlg) {     CListBox* pListBox=(CListBox
MFC主窗口出现之前弹出子窗口子窗口交互问题
本文介绍MFC窗口应用程序如何在主窗口出来之前弹出子窗口,并与主窗口进行数据交互。
MFC入门(五)-- 新建子窗口,添加子窗口初始化虚函数,修改版本和图标
MFC创建子窗口子窗口初始化,修改版本,修改图标等等
MFC 父窗口和子窗口之间传值
ClinecheckDlg *pDlg = (ClinecheckDlg *)this->GetParent();pDlg->m_exclefilepath=dlg.GetPathName(); 以上代码是在子窗口中,ClinecheckDlg为父窗口。想要将子窗口中的值dlg.GetPathName(它只是个变量,可以看做int a)传递到父窗口中,需要做以下两步: 1、在头文件中引入Lin
MFC中子窗口调用父窗口指针(子类调用父类)教程——100%实现
最近在写一个MFC程序,其中遇到了子窗口调用父窗口指针的问题,具体解决过程如下:一、创建子窗口(这里就不详细说了,可以自己百度,网上有相关的教程)二、子窗口调用父窗口指针的函数代码CMFCDlg *pDlg = (CMFCDlg*)this->GetParent();m_DeviceCurSel = pDlg->m_nDeviceCurSel;注:工程说明,我的工程是调用相机的参数并对...
MFC中创建并弹出子窗口
原文地址:http://blog.csdn.net/majian_418/article/details/8230499 1)首先要添加一个Dialog资源,并把属性中的Visible项设置为true,       然后给该对话框资源添加一个类,比如CTestDlg。 2)在父窗口所在的.h文件中包含TestDlg.h文件,并创建一个CTestDlg类的成员,如:   
关于MFC将一个窗体嵌入另一个窗体的方法
 将一个窗体嵌入另一个窗体,也就是相当于把一个
MFC下父窗口与子窗口的数据发送
MFC下完成子窗口与父窗口之间的额数据传递
MFC中使用GetParent获得子窗口的父窗口句柄
今天真是晕了,为了解决
mfc获取子窗口句柄总结
1.FindWindow,根据顶级窗口的类名或者标题名获得顶级窗口句柄 2.::EnumChildWindows(m_mhd,EnumChildProc,0); 根据顶级窗口筛选出可以可以分辨出离目标子窗口最近的子窗口,EnumChildProc这里可以获得每个子窗口的句柄,可以根据句柄获得子窗口所有消息,是回调函数 BOOL CALLBACK EnumChildProc(   HWND
MFC Dialog子窗口大小随父窗口而能改变,控件随窗口大小而改变
1、为Dialog添加类,假定类名字:CMyDLG。并将属性中的style设置为:child 2、CMyDLG的头文件添加:    public: CWnd *m_pParent; virtual BOOL OnInitDialog(); afx_msg void OnSize(UINT nType, int cx, int cy); private: CRect m_rect;
半透明: MFC实现父窗口不透明,子窗口半透明效果
[cpp] view plaincopy OnEraseBkgnd(CDC* pDC)   {       // TODO: 在此添加消息处理程序代码和/或调用默认值   //绘制子窗口的背景,用主窗口的背景填充,实现透明效果       CRect clientRect;       CDC dcEraseBkgnd;       GetClientR
MFC如何在父窗口的指定位置创建子窗口,及border边框属性设置
MFC中添加新的对话框
MFC父窗口中加入一个子窗口
参考博客: MFC 在父对话框中内嵌子对话框 MFC实现子对话框间切换 具体操作 新建对话子窗口IDD_SUB_DEPLOY 1)、“Style”选择“Child”;中文版“样式”选择“下层”。 2)、“Border”为“None”;中文版“边框”选择“无”。 父窗口头文件添加成员变量 //调用子窗口 CRect m_deployRect;//窗口位置 ...
MFC(7) 利用CWinThread实现跨线程父子MFC窗口
http://jetyi.blog.51cto.com/1460128/1074315/ 原则上,MFC对象只能由创建该对象的线程访问,而不能由其它线程访问.这是因为MFC窗口中有一个Windows handle maps, 这个maps同线程相关,也就是说该线程一定会访问该maps,而且该线程创建的MFC窗口对象一定会放到该maps中,如果没有就会报错.但是如果其它线程将一
MFC 子窗口拦截父窗口消息响应简单的解决方法
我在一个播放器设计中遇到一个问题,右键弹出菜单时,是在主窗口BOOL CXXXDlg::PreTranslateMessage(MSG* pMsg)中响应的,然后视频开始播放之后,这时候再右键的时候,会被子窗口CAAAView截获, 父窗口从而接收不到右键消息。 网上搜了几种方法,不过比较简单的还是下面这种, 直接在子窗口的PreTranslateMessage中对应消息中返回false, 然后就
MFC多文档程序如何关闭子窗体, MDIDestroy();
1、在子框架 1、class CMainFrame : public CMDIFrameWnd { DECLARE_DYNAMIC(CMainFrame) public: CMainFrame(); //.......... }; 类中添加一个菜单命令例如:关闭子窗体,则命令响应函数添加如下代码 2、响应函数 void CChildFrame::OnCloseMDi()
【Qt】弹出子窗口时禁用主窗口
子窗口名:userManagerDialog Qt::WindowFlags flags = Qt::Dialog; userManagerDialog->setWindowFlags(flags); 弹出子窗口时禁用主窗口 userManagerDialog->setWindowModality(Qt::ApplicationModal); //阻塞除当前窗体之外的所有的窗体 关于se
MFC添加子窗口
本文档仅是简单的实现  主窗口用一个按钮控制子窗口的显示与隐藏。         在资源视图,添加新对话框,命名 随便。如 IDD_DIALOG1         右键-添加类, 基类选择 CDialog。  类名随便,尽量符合窗口功能即可,如 ViedoDlg                   在主窗口的头文件中加入 头文件  #include “VideoDlg.h”      
MFC父窗口 子窗口隐藏关系
MFC子窗口和父窗口(SetParent,SetOwner) 一、概念和区别  在windows系统中,每个窗口对象都对应有一个数据结构,形成一个list链表。系统的窗口管理器通过这个list来获取窗口信息和管理每个窗口。这个数据结构中有四个数据用来构建list,即child、sibling、parent、owner四个域。 所以我们可以看到,窗口之间的关系有两种:owner
MFC给子窗口添加图标和子窗口自动关闭
子窗口添加图标 1、首先确定在子对话框中选中style->Title bar; 2、导入对应的图标到文件中; 3、在子对话框OnInitDialog() 中写入以下代码: //创建图标 HICON icon; //加载图标 icon = AfxGetApp()->LoadIcon(IDI_LOG_ICON); SetIcon(icon,true); SetIcon(icon,fa
原创vc: 对话框嵌入到对话框 或者:窗口嵌入到窗口,一个窗口嵌入到另一个窗口
1、用vc新建一个dialog1工程。属性默认。2、insert一个dialog2,改为child。3、在dialog1中包含dialog2头文件,在一个按钮事件中显示dialog2:Cdialog2 *p = new Cdialog2(this);p->Create(IDD_Dialog2);p->SetParent(this);//设置dialog1为父窗口p->Sho
MFC限制子窗口只在父窗口内移动
1,响应WM_MOVE消息 在里面判断就完了 进消息向导找到它然后双击吧,然后添加你自己的限制代码(获取父窗口的clientRect,就是限制区域) 取得父窗口的顶点和右下角坐标,利用子窗口的顶点坐标和右下角坐标进行范围的判断即可 例如父窗口A(50.50)(100.100)子窗口的顶点坐标应该大于等于X1>=50&&Y1>=50 右下角坐标X2 2,应该是WM_MOVING消息
MFC中通过子窗口关闭父窗口以实现退出程序
这应该是个老问题,我来稍微总结下:(我刚刚接触Windows编程希望大家多多指点) 1.上来来个最鲁莽的. 直接通过exit(0),ExitProcess(0); //不好的用法 猜测资源得不到回收 原因如下: http://blog.csdn.net/jiang1013nan/article/details/4831020 2.向父窗口发送WM_CLOSE消息,
MFC子窗口向父窗口发送消息(测试成功20110117)
在MFC中,使用用户自定义消息,子窗口向父窗口发送消息过程、代码:1)在resourse.h中增加定义: //#define WM_add_event_ok (WM_USER + 100) //这种定义方法没有测试,不知道行不行; static UINT WM_add_event_ok = RegisterWindowMessage(_T("User"));//测试过,可行。2)在父窗口的.h文件中
SOUI创建子窗口和父子窗口通讯
SOUI中创建有窗口句柄的xml布局的子窗口 为了运用SOUI完成基本的父子窗口切换问题,同时能够利用xml文件布局窗口界面,就要用到有窗口句柄的真窗口(SOUI这么叫)。每一个使用SOUI创建的界面都是从SHostWnd派生出来的。SHostWnd本身就是一个有窗口句柄的真窗口。因此和一般的win32编程一样,用户可以简单的自己以SHostWnd.m_hWnd为父窗口创建各种真子窗口。然
MFC子窗口中退出程序
MFC子窗口中退出程序 在子窗口中退出程序应使用PostQuitMessage(0);函数实现。 函数GetMessage里是使用一个循环不断地检测消息,周止复始的,是不可能出现死亡的,但它会检测到消息WM_QUIT就退出来。那现在问题是谁发送WM_QUIT消息出来呢?这就是PostQuitMessage函数所做的工作。当你点击窗口右上角的关闭时,Windows就会把窗口从系统
MFC 在点击子窗口关闭按钮时同时关闭父窗口
在网上看了很多文章都没看到明确的如何解决这一问题,在自己了解MFC消息机制后通过实践得出如何解决方法:  在子窗口中重载OnCancel(),并在子窗口中注册WM_CLOSE消息的处理函数为OnCancle(),在OnCancel()函数中实现父窗口的关闭即可; 例如: class CLoginDlg : public CDialog {      ///父窗口        …………
MFC : 在主窗口不透明的情况下, 建立一个半透明的子窗体带透明的TreeCtrl
前段时间和别人讨论问题, 他说要在一个不透明的主窗体上, 建立一个透明的子窗体, 在该子窗体上再建立透明的TreeCtrl. 先是将透明的TreeCtrl实现了, MFC : Transparent TreeCtrl from CTreeCtrl 在实现子窗口体透明时, 他说已经试验过设置窗体扩展风格 WS_EX_LAYERED的方法, 当主窗体不透明时, 子窗体无法实现透明.  所
MFC TAB控件的两个子对话框之间的参数传递及调用
手把手教: 基于MFC AppWizard (exe)的基本对话框应用程序中的对话框与对话框中的参数传递。实现当单击对话框A中的一个按钮控件时,对话框B中的一个按钮处于不可用状态,再单击一下,则变为可用。(要实现这种功能,关键在于使得对话框A中可以找到指向对话框B的指针,这样才能找到对应的按钮)步骤:1. 新建-工程- MFC AppWizard (exe)-工程名“TMTD”-应用程序类型:基本...
子窗口中调用父窗口的成员函数的实例
子窗口中调用父窗口的成员函数的方法 1、用FindWindow("类名(可以是派生类)","窗口标题")或GetParent(),二者均能返回父窗口句柄,并能直接使用其成员函数。但是此法只能调用CWnd类里的成员函数,而不能调用自己创建的派生类中的函数。 2、在子窗口的初始化函数里加上父窗口的指针 ,然后在子窗口的类中使用全局变量保存父窗口的指针。如: 父窗口类为CMyDlg(父类为CDialog),子窗口类为CMySon(父类为CDialog),则在CMyDlg::OnInitDialog()中初始化子窗口对象m_myson=new CMySon(this);(m_myson为在父窗口中声明的成员),然后在MySon.cpp中的开始处声明全局变量CMyDlg *parent;(在MySon.h中要加入MyDlg.h头文件),最后在CMySon的构造函数中定义parent=(CMyDlg*)pParent; 好了,现在你可以在子窗口中随时调用父窗口函数了!
MFC Tab控件子窗口调用父窗口资源方法
原文:http://blog.csdn.net/u012273127/article/details/60735602   修改部分用法: 1、如果父窗口不是主窗口,甚至连主窗口的子窗口都不是,没必要用ManFrm.h,直接在子窗口类的CSon.cpp文件中包含父窗口类的CFather.h文件。注意,必须在CSon.cpp中包含,因为如果在子窗口类的CSon.h文件中包含,可能造成重复定义,
[求助][已解决]MFC+OpenCV在子窗体中显示图片 20160312
程序预期功能: 在父窗体中画一个按键(Button1),点击按键(Button1)然后跳出子窗体(son_window_IDD_DIALOG_BG),显示图像。(OPEN/CLOSE是用来打开和关闭摄像头的,father_window里面的image control控件用于显示视频,三者和本次问题无关) 目前遇到的问题是: 如图,显示失败。我不知道怎么配置CDC/HDC/
关于MFC中 父窗口与子窗口 子窗口子窗口之间的信息传递及控制
因为项目的需要,某子窗口B的设置变动,经常需要联动其他子窗口C,或者父窗口A控件的名称更新,数据更新等等问题。再网上查了许久,不得解 ,特抛砖引玉,提供几种思路。      以下都以A为父窗口,A1为A中的Tab控件, B和C为子窗口被非模态创建于A1上,所以之间的关系为 A                           |                 A1      A2
MFC 子窗口在其父窗口相对位置
- -这两天为这问题恶心死我了 GetWindowRect(hwnd,&rect) //获取控件在屏幕位置 GetClientRect(hwnd,&rect)//获取控件长度、宽度 ScreenToClent(hwnd,&rect)//屏幕坐标转客户区坐标 ClientToScreen(hwnd,&rect)//客户区坐标转屏幕坐标 这四个函数...可算是恶心死我了 过多的我也不想解释
MFC 多文档 最大化父窗口和子窗口
MFC 多文档 启动时就最大化父窗口or子窗口最简便的方法: 类视图中: 父窗口: CXXXApp类中的 InitInstance()中加 m_pMainWnd->ShowWindow(SW_SHOWMAXIMIZED); pMainFrame->UpdateWindow(); 子窗口: CChildFrame类中重载ActivateFrame函数: void CChildFram
MFC为子窗口绘制透明背景
这篇贴给有一定GDI基础的人看,基础不好的直接抄代码吧(最后一块代码是对的,别抄错); “把父窗上被子窗口占用的区域的背景绘制到子窗口上实现视觉透明”,这句话忘了从哪来的了,反正很多人在用,而且mfc和windows本身也在用。关键是很多人都把“父窗口的背景”理解成“父窗口的DC”,所以,写出获取父窗口背景的代码就大概是这样: CDC *pParentDC = GetParen
MFC中子窗口中的控件随着父窗口的改变而改变
最近遇到一个比较头疼的问题就是子窗口中的控件无法跟随父窗口的改变而改变,今天终于解决这个问题了,写下解决的方法。 主要的思路就是重写onsize函数,然后向子窗口发送MoveWindow函数。代码为:  在 主窗口的.h文件中添加: POINT Old; void resize();     并加载OnSize函数 afx_msg void OnSize(UINT nType, in
mfc枚举所有子窗口
BOOL CALLBACK EnumChildProc( HWND hwnd, LPARAM lParam ){ if( hwnd ) {  TCHAR ch[100];  CWnd::FromHandle( hwnd )->GetWindowText ( ch, 100 );  AfxMessageBox( ch ); } else  return false;}void CEnumWindowDlg::OnBnClickedOk(){ EnumChildWindows( this->GetSafeHwn
在父窗口的中间位置显示子窗口 MFC
CRect rect; GetWindowRect(rect);//该函数返回指定窗口的边框矩形的尺寸。该尺寸以相对于屏幕坐标左上角的屏幕坐标给出。 //rect获得的坐标为当前窗体的坐标,对于显示器屏幕的最左上角为(0,0)点坐标,向下移动多少就加值多少 //假设要显示的对话框宽320,高140,(320,140),left、right是X轴坐标,left-right则为宽父窗体的宽,同理
MFC程序中父窗体捕捉子窗体被点击的消息
只需要重载父窗体的OnCommand(WPARAM wParam, LPARAM lParam) 函数,而不需要重载子窗体的OnLButtonUp(UINT nFlags, CPoint point) 函数 典型地如下操作即可BOOL CDiaBoxDlg::OnCommand(WPARAM wParam, LPARAM lParam) {    // TODO: Add your special
弹出子窗口时设置主窗口不可点击
1.让QMainWindow窗口在QDialog窗口上面置顶层,默认是置QDialog窗口的底层 setWindowFlags(Qt::Dialog); 或者 子窗口名:userManagerDialog Qt::WindowFlags flags = Qt::Dialog;  userManagerDialog->setWindowFlags(flags);  
枚举遍历所有子窗口句柄控件类型标题
为指定的父窗口枚举子窗口、按钮  很早就写过类似spy++和查看密码窗口的东西,一直想给这个小东西再加点特别的。前段时间对软件安装注册发生了兴趣,有些软件如果你不输入正确注册码,那该死的“下一步”按钮就一直disable。这次我就让spy++彻底spy到底,把那个注册用的按钮置亮,让我轻松进入“下一步”,呵呵…。   我的想法是光标移到指定的窗口上后,探测这个窗口上到底有多少按钮,如果有,就将它们
vc获得窗口并枚举其子窗口
 调用函数FindWindow(窗口类名,窗口标题)获得窗口的句柄,然后调用EnumChildWindows(父窗口,回调函数名,参数)来获得父窗口下的子窗口的句柄,代码实现如下  #include BOOL CALLBACK EnumChildProc(HWND hWnd,LPARAM lParam); void main(int argc, char* argv[]) {
多文档设置子窗口大小及位置等
1、如何改变多文档的子窗口初始化显示的位置(有图片显示) http://hi.baidu.com/pqleo/item/c589e5118cab44101894ecc6
EnumChildWindows枚举所有子窗口
BOOL CALLBACK EnumChildProc(HWND hwndChild, LPARAM lParam) { TCHAR szWndTitle[1024]; int nLen = GetWindowText(hwndChild, szWndTitle, 1024); if (nLen) { if (strcmp(szWndTitle,(char*)lParam)==0)
MFC子窗口向父窗口发送消息
在MFC中,使用用户自定义消息,子窗口向父窗口发送消息过程、代码: 1)在resourse.h中增加定义:  //#define WM_add_event_ok (WM_USER + 100) //这种定义方法没有测试,不知道行不行; static UINT WM_add_event_ok = RegisterWindowMessage(_T("User"));//测试过,可行。 2)在父
3D打印建模:MoI3D设计基础与实践
3D打印建模
vs2010子窗口向父窗口发送消息
vs2010子窗口怎样向父窗口发送消息
MFC 子窗口初始化CListCtrl控件
子窗口的类中重定义一个BOOL On
MFC实现父窗口不透明,子窗口半透明效果
C++代码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
duilib+mfc 移动父窗口
制作一个客户端,选择duilib+cef+mfc为客户端界面。父窗口为一个对话框,子窗口为duilib的窗口(Mainframe)。当主界面把mfc的对话框盖住时,发现窗口移动不了(无标题窗口)。为了移动主窗口,记录的解决方法: 第一个解决方法(失败) ... if (uMsg == WM_LBUTTONUP) { POINT point = { G...
|窗口移动子窗口也跟着移动|
------------------------------------------------------------------------------------------ |父窗口移动子窗口也跟着移动| ------------------------------------------------------------------------------------------
【MFC】怎样在子窗口中单击按钮关闭父窗口和子窗口??
子窗口的类里面添加消息响应OnClose 点击关闭按钮会响应子窗口的OnClose,你在子窗口的OnClose里追加一句 GetParent()->sendMessage(WM_CLOSE); 这样父窗口也会被关闭
MFC中给子窗口添加窗口初始化函数BOOL xxxxx::OnInitDialog()
有时需要给子窗口的控件初始化状态,但子窗口自己不主动提供BOOL xxxxx::OnInitDialog()函数,下面我演示下如何主动添加函数比如我要给子窗口添加函数,这个子窗口我添加的类是CTipDlg11,那么可以到类视图(左下框选标记)中找到CTipDlg11,然后在最右边上面部分点击第六个菱形图标,到下面找OnInitDialog以后类里面的所有函数都可以这么添加...
MFC 对话框(窗口)透明
程序的实现步骤基本就是这样,当然也有其他方法。希望大家能积极开拓,展示更多方法。 SetWindowLong(this->GetSafeHwnd(), GWL_EXSTYLE, GetWindowLong(this->GetSafeHwnd(), GWL_EXSTYLE)^WS_EX_LAYERED); #ifdef _UNICODE HINSTANCE hInst = LoadLib
Qt学习笔记(九) 子窗口屏蔽父窗口以及窗口间的通讯
子窗口屏蔽父窗口(模态窗口) 1.子窗口继承自QDialog,并调用exec()方法 2.子窗口继承自QWidget MyDialog *dialog = new MyDialog(NULL);//MyDialog继承自QWidget dialog->setWindowFlags(Qt::FramelessWindowHint | Qt::Dialog); di...
在父窗口不透明的情况下,实现子窗口的半透明效果
根据MSDN所述,子窗口的半透属性是跟随父窗口的。也就是说在子窗口中用SetLayeredWindowAttributes方法完成透明是不可行的。本人偷巧,在父窗口不透明情况下,简单实现子窗口的半透明效果。
子对话框调用父对话框button按钮事件
1、将父对话框的按钮事件定义成public方法(例如我调用父对话框的搜索按钮) public void btn_Query_Click(object sender, EventArgs e) {...} 2、在主窗体类中定义一个静态成员,来保存当前主窗体对象。 例如: public static MainWindow pWin= null; 3、然后在主窗体构造函数中或者
在MFC的MDI程序中设置子窗口客户区大小
用MFC写一个基于OpenCV的MDI程序,每一次读取图像之后,图像都会显示在主程序的一个子窗口中。 问题来了:根据读取的图像大小采用MoveWindow函数来设置子窗口大小时,显示的窗口尺寸实际上是包含了“标题栏+边框+客户区”整个区域,                    导致每次显示读取的图像时,总会有右边和下边的一小部分没显示出来。 查了很多资料之后都没有解决,后来就想了一
PyQt5从主窗口打开子窗口
1.在Qt Designer中设计两个简单窗口2.将.ui文件转换成.py文件3.新建**.py文件#-*- coding:utf-8 -*- from PyQt5.QtWidgets import QMainWindow, QApplication from window import Ui_MainWindow from child import Ui_Child import sys cl...
C#如何操作另一个窗体:[2]子窗体操作主窗体
方法/步骤1首先我们新建一个项目在项目管理器中,我们右击,选择"添加",选择"windows窗体"输入窗体名,点击"确定"我们给form1拖入按钮控件在项目管理器中,我们找到"Form1.Designer.cs",双击打开代码窗口我们找到按钮的定义,然后把private改为public我们回到窗体1,把以下代码填入代码窗品中 Form2 a = new Form2();            a....
MFC中获取父窗口指针 从而调用其函数及变量
假设父窗口类名为CParentDlg,要在子窗口中调用父窗口的函数为pFunction,要调用父窗口中的变量为pVari。 则代码实现是: CParentDlg *pDlg = (CParentDlg*)GetParent()->GetParent(); pDlg->pFunction(); pDlg->pVari; 用GetParent()获取父窗口指针。 第一个GetPare
[MFC] 无边框窗口的Resize拖动效果的实现(下):子窗口覆盖,导致主窗口热点区无法响应WM_NCHITTEST
http://blog.csdn.net/felicityWSH/article/details/68486466 这篇博文讲解了如何实现无边框窗口的Resize拖动效果,文中提到,需要响应主窗口的WM_NCHITTEST消息,检测鼠标是否在resize热点区并返回HTTOPLEFT、HTBOTTOM等相应的结果。 但是,如果子窗口覆盖了主窗口的热点区,当鼠标在热点区移动时,主窗口是无
子窗口中设置控件的位置
CWnd *pWnd; pWnd = GetDlgItem( IDC_EDIT1 ); //获取控件指针,IDC_EDIT1为控件ID号 pWnd-> SetWindowPos ( NULL,X,Y,CX,CY,TRUE); //在窗口左上角显示一个宽100、高100的编辑控件 BOOL SetWindowPos ( const CWnd* pWndInsertAfter, int
调用EnumChildWindows来枚举子窗口
EnumChildWindows()函数的作用是向父窗口的所有子窗口按顺序的(枚举)调用回调函数。函数原型 BOOL WINAPI EnumChildWindows( HWND hWndParent, //父窗口句柄 WNDENUMPROC lpEnumFunc, //回调函数 LPARAM lParam
MFC 怎样获得某个窗口的句柄?
GetSafeHandle(); this-> hWnd; GetDlgItem(hwnd,ID);//获取窗口ID所对应的HWND的子窗口句柄  在主窗口中,如果要用到父窗口的句柄,可以用  HWND   GetParent(HWND   hWnd)       得到    参数为当前所在子窗口的句柄,函数的返回值就是当前子窗口的父窗口句柄  在父窗口中,如果有子窗口句柄
显示与隐藏子窗口
点击按钮前:    点击按钮后 过程: 1.新建cocoa类,取MusicListView名,父类为view类:   2.新建文件
win32 api 子窗口在父窗口居中的方法
如果要让窗口内的一个控件在父窗口的客户区居中,或在某一位置,可以用SetWindowPos,注意里面的第三个和第四个参数是相对于父窗口的客户区的坐标的,父窗口的客户区的坐标的左上角left,top都是0 如果在父窗口里弹出一个DialogBox子窗口,这时你可能希望这个DialogBox在父窗口的客户区居中显示,你只需要在这个DialogBox的WM_INITDIALOG处理函数里加入以
MFC 通过主窗口向子窗口的listbox控件里赋值,并获取子窗口中listbox控件里的值
子窗口类:CSelectObj; CListBox m_SelectObj; //子窗口listbox控件变量 主窗口: 下面是错误的写法 /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
VC实现顶层窗口的透明与实现子窗口的透明【重点:子窗口透明处理】
本人在vc开发过程中,多次因窗口透明而煞费苦心,在本人的前一文章《UpdateLayeredWindow与SetLayeredWindowAttributes》中已经指明实现窗口的透明方法,在过往实际的开发过程中我也一直沿袭这一做法,但也并不是屡试不爽,实际应用过程中的缺陷暴露如下: (1)SetLayeredWindowAttributes和UpdateLayeredWindow两个API函数
父窗口与子窗口调用
在使用iframe标签的时候,难免会需要在父窗口调用子窗口中的js方法;子窗口调用父窗口的方法;兄弟窗口之间方法调用,所以,稍微整理一下这方面的内容。
MFC下使用CvvImage在子对话框(非主对话框)中无法显示图片的解决方法
在MFC框架下利用OPENCV进行项目开发时,我们经常会遇到要将一幅图片显示在对话框中,通常我们利用MFC的Picture Control控件作为图片容器,若Picture Control控件是在主对话框中,这时是比较简单的,参考代码如下: 1.主窗口(主对话框): void CDemoDlg::OnBnClickedButton1() { //....................
MFC同源子窗口的实现
         MFC里的静态拆分窗口是一种很有意思的效果,但它们毕竟不是独立的窗口,还框在一个大窗口中, 那么要使用真正完全独立的窗口怎么做呢?本文参考侯捷的《深入浅出MFC》的第13章的思路,实现了多个独立的视图窗口,代码如下:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.Co
MFC 子对话框之间互相发送消息的方案
最近做项目,遇到了在多对话框情况之下,子对话框之间能够互相发送消息的情况。 由于SendMessage()函数第一个参数是目的地的句柄,所以只要能在子对话框1中得到子对话框2的句柄即可。 网上有资料说可以用FindWindow函数,进行子对话框的句柄查找,但弄了半天,发现一直无法得到想要的外部其他子对话框的句柄 最后得到的解决方法是子对话框将操作需求发回给父对话框,然后由于父对话框中保存有子
mfc实现悬浮子窗口(动态实现)
mfc实现悬浮子窗口(动态实现):可以分为2种方法来实现;第一种是通过比较简单而实用的 动态实现api去修改属性;第二种办法是 实现的效果类似vs2008这样的 悬浮框、停靠等,是通过单文档 中 CDockablePane;也可以实现将界面随时变换颜色等风格变换!具体的代码和运行程序 请看下一个“MyVS9Demo”!
VC搜索窗口、遍历子控件
1.得到窗口名     CString strWindowName="xxx";    //如果搜索word窗口名,则为文件名+“_Microsoft Word”,而且还要注意文件名是否带扩展名2.查找窗口句柄    HWND hwnd = ::FindWindow(NULL, strWindowName);3.设置窗口位置    ::SetWindowPos(hwnd,                                      //窗口句柄                  
MFC技术系列(四)--Frame窗口(1)
1          Frame和View概述       Frame窗体实际就是一个Overlapped窗口(WS_OVERLAPPEDWINDOW组合风格),它可以包含菜单、工具条和标题栏。MFC使用CFrameWnd封装了Frame窗体,并提供了它更多的特性,比如:可dockable的control bar、dde会话等。进一步,MFC中提供了CMDIFrameWnd类和CMDIChil
MFC中父窗口及子窗口控件的文本字体,大小,颜色,背景的设置
   父窗口:(以Static Text控件为例)方法一:单纯的设置字体,大小.(以定义变量方式来设置)      为Static Text控件添加成员变量,如CStatic m_Mubangongju,在xxxxdlg.h中定义CFont m_EidtFont,然后在BOOL CjishiqiDlg::OnInitDialog()中添加 m_EidtFont.CreatePointFont...
10.VC(ui)-子窗口和父窗口重绘
子窗口无效不会引起父窗口重绘,父窗口无效,如果父窗口收到WM_PAINT,则所有子窗口都会在父窗口处理WM_PAINT之后收到WM_PAINT重绘消息,当然,如果父窗口带有属性WS_CLIPCHILDREN,则不会引起子窗口重绘
[转载]MFC子窗口和父窗口(SetParent,SetOwner)
原文地址:MFC子窗口和父窗口(SetParent,SetOwner)作者:天涯霜雪 一、概念和区别 在windows系统中,每个窗口对象都对应有一个数据结构,形成一个list链表。系统的窗口管理器通过这个list来获取窗口信息和管理每个窗口。这个数据结构中有四个数据用来构建list,即child、sibling、parent、owner四个域。 所以我们可以看到,窗口之间的关系有两种:ow
我们是很有底线的