精华内容
下载资源
问答
  • MFC 点击一个对话框按钮弹出另一个对话框 vs2010中 1.在资源中添加一个对话框 右击Dialog | Insert dialog 2.在对话框上添加自己需要的按钮等控件 3.双击控件会出现一个对话框,为添加的对话框命名一个...
    MFC 点击一个对话框按钮弹出
    另一个对话框
    

    vs2010中

    1.在资源中添加一个对话框  右击Dialog | Insert dialog

    2.在对话框上添加自己需要的按钮等控件

    3.双击控件会出现一个对话框,为添加的对话框命名一个类名,例如Dlg2   自动生成.cpp和.h文件

    4.在第一个对话框的.cpp文件中包含上面生成的那个.h文件

    5.在第一个对话框的按钮的响应函数中添加

    Dlg2 dlg2;
    dlg2.DoModal();

    那么点击第一个对话框的那个按钮时,就会弹出第二个对话框. 

    另外介绍一下DoModa,DoModal负责对模态话框的创建和撤销。在创建对话框时,DoModal的任务包括载入对话框模板资源、调用OnInitDialog初始化对话框和将对话框显示在屏幕上。完成对话框的创建后,DoModal启动一个消息循环,以响应用户的输入。由于该消息循环截获了几乎所有的输入消息,使主消息循环收不到对对话框的输入,致使用户只能与模态对话框进行交互,而其它用户界面对象收不到输入信息。

    要建立非模态对话框需要调用两个函数Create()和ShowWindow()。

    来自:http://blog.csdn.net/daska110/article/details/51182145

    展开全文
  • 转自: ... MFC 点击一个对话框按钮弹出另一个对话框 vs2010中 1.在资源中添加一个对话框 右击Dialog | Insert dialog 2.在对话框上添加自己需要的按钮等控件 3.双击控件会出现一个



    转自: http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=29121609&id=3883371


    MFC 点击一个对话框按钮弹出另一个对话框

    vs2010中

    1.在资源中添加一个对话框  右击Dialog | Insert dialog

    2.在对话框上添加自己需要的按钮等控件

    3.双击控件会出现一个对话框,为添加的对话框命名一个类名,例如Dlg2   自动生成.cpp和.h文件

    4.在第一个对话框的.cpp文件中包含上面生成的那个.h文件

    5.在第一个对话框的按钮的响应函数中添加

    Dlg2 dlg2;
    dlg2.DoModal();

    那么点击第一个对话框的那个按钮时,就会弹出第二个对话框. 

    另外介绍一下DoModa,DoModal负责对模态话框的创建和撤销。在创建对话框时,DoModal的任务包括载入对话框模板资源、调用OnInitDialog初始化对话框和将对话框显示在屏幕上。完成对话框的创建后,DoModal启动一个消息循环,以响应用户的输入。由于该消息循环截获了几乎所有的输入消息,使主消息循环收不到对对话框的输入,致使用户只能与模态对话框进行交互,而其它用户界面对象收不到输入信息。

    要建立非模态对话框需要调用两个函数Create()和ShowWindow()。


    展开全文
  • 本文介绍MFC窗口应用程序如何在主窗口出来之前弹出子窗口,并与主窗口进行数据交互。

    
    
    MFC主窗口出现之前弹出子窗口与子窗口交互问题

    作者:褚湘鸣 转载需注明出处

    平台

    Microsoft Visual Studio 2013

    工具

    MFC App Wizard

    实现目标

    1.      在MFC主窗口弹出来之前弹出一个子窗口

    2.      该子窗口可以自定义一些数据域进行操作

    3.      应用场景:app的hello界面,初始化等,本例中是在子窗口中选择身份,在主程序中展现出来

    步骤:

    1.      利用MFC App Wizard 创建一个但文档对话框模式的app。主窗口类增加一个自定义成员变量,用于接收子窗口中传来的消息。本例中使用的是自定义类Person的对象Hero的数据域Identity(private)

    2.      利用Class Wizard 创建一个CDialogEx 的子类,暂且名为NewDialog,NewDialog中增加一个自定义的数据域:m_Identity,用来表示

    3.      在资源视图中,利用可视化编程设计NewDialog对话框,如:

    4.      点按某个按钮后,把相应的事件写出来:

    如双击“领主Lord”,弹出程序,写入:

    注:

    1.      OnBnClicked*****的意思就是在这个按钮被单击的事件发生后,需要执行的程序

    2.      CDialog::OnOK()函数是CDialog类及其子类所代表的(模式)对话框中都必须有的“确定”按钮被单击后执行的程序,属于默认程序。因为本程序中点按后必须关闭现有对话框,所以增加这一句。

    3.      LORD是我在另一个头文件中定义的宏,不用管

    5.      上述程序写完后(很简单吧),子窗口就实现了如下功能:通过点按某个按钮,使子窗口对象的一个成员变量:m_Identity有了相应的值

    6.      接下来,就要实现在主窗口出来之前弹出子窗口。在“主窗口类名.cpp”(本例为MBDlg.cpp)中找到OnInitDialog()函数,添加如下代码:

    注:

    1.      不是在InitInstance()里加,网上有的教程是错的

    2.      帮助大家理清逻辑:在这个地方添加的代码执行的时间,是在主窗口定义之后,显示之前,也就是说此时主窗口的对象(类的实例)已经存在,而这段程序的位置又在这个类的成员函数内部,所以成员变量(对象)Hero也已经存在,可以直接引用;SetDlgItemText()函数也是在主窗口的内部使用,所以不用指定窗口的id(该函数原本有三个参数,第一个是指定窗口的指针,但是现在只用两个就行了)

    3.     若想在某一个对话框点了“退出”或者“取消”后就退出全部程序,可以添加如下代码

    if(dlg.DoModal()==IDOK){...}

    else{  

    CDialog::OnCancel();  

    return true;

    }




    展开全文
  • 要实现的功能就是点击按钮,用dlg.DoModal()弹出子对话框,在子对话框中有CListControl控件,要对CListControl控件进行数据的初始化,但是无法对其进行初始化。子对话类中已经添加了OnInitDialog()方法,感觉没有...
  • 主窗口类:usb_testDlg,子窗口类:MyNewDlg 1、MyNewDlg.cpp定义:CMyNewDlg *p_MyNewDlg = NULL; 2、usb_testDlg.h声明: class Cusb_testDlg : public CDialog { public: void New_Init(void); } ...

    新建类步骤:请自行百度,以下仅为窗口调用

    主窗口类:usb_testDlg,子窗口类:MyNewDlg

    1、MyNewDlg.cpp定义:CMyNewDlg *p_MyNewDlg = NULL;

    2、usb_testDlg.h声明:

    class Cusb_testDlg : public CDialog

    {

    public:

         void New_Init(void);

    }

    3、usb_testDlg.cpp定义:

    extern CMyNewDlg *p_MyNewDlg;

    Cusb_testDlg::~Cusb_testDlg(void)

    {   

          delete p_MyNewDlg;  //释放指针

    }

    void Cusb_testDlg::New_Init(void)

    {

         p_MyNewDlg = new CMyNewDlg();   

    }

    void Cusb_testDlg::OnBnClickedButtonConfigruation()

    {

         // TODO: 在此添加控件通知处理程序代码

         New_Init();

         p_MyNewDlg->DoModal();   //生成配置窗口

    }

    新手,描述有错或是不到位的地方,请大神指出

    展开全文
  • void CCARTransferDlg::OnBnClickedButton1() { // TODO: 在此添加控件通知处理程序代码 ::SetWindowPos(this->m_hWnd,HWND_TOPMOST,10,...点击按钮之后六个子窗口不是同时显示的 怎么能让其同时显示?????
  • 博主刚开始接触MFC,前几天遇到这个问题,本想通过全局变量的方法,但没有成功,在网上查阅过...2.如下所示的界面中(控件为自己添加),右键点击窗口,选择添加类,弹出下面的对话框,写入想添加的类名(我这里写的...
  • MFC之如何弹出模态窗口

    千次阅读 2017-06-12 18:56:54
    当我们在做MFC设计的时候,我们也许想要点击某个按钮让对话框弹出一个窗口,比如展示该程序的使用方法、展示版本信息、对用户进行提示等等。要实现这个功能,要经过以下几步: 第一,在资源视图下右击Dialog,添加...
  • 窗口有一个CtabCtrl控件 然后有几个Child窗口 当弹窗Child窗口的时候会覆盖CtabCtrl空间的显示 还会超出CtabCtrl控件的区域 怎么解决 下面是我写的弹出框代码 没有关闭打开前的一个窗口 也不知道怎么写才对 求大神...
  • MFC中的主窗口添加了一个tabCtrl按钮和确定按钮子窗口1和子窗口2均添加了radio button按钮和combox按钮,我想实现在子窗口点击radio button按钮以及在下拉框combox选中文本,点击主窗口的确定按钮弹出添加list...
  •  CMyDlg *dlg = new CMyDlg(); //新建一个CMyDlg对象 this->ShowWindow(SW_HIDE); //隐藏父窗体  dlg->DoModal(); //弹出子窗体
  • 想做好几种子窗口,各对应工具条上的一个按钮,点了之后就弹出相应的子窗口 查看了很多vc自带的的例子,找到了一段代码,可以正常弹出CView视图的子窗口,但是我现在把子窗口分割成2个窗口就不行了!
  • 该资源里面有一个可以实现点击一个窗口弹出另一个窗口的实例,还有一个本人在解决这个问题时所做的笔记。你们可对比实例和我的笔记来参考。
  • 主对话框中设置一个按钮弹出子对话框 void C数据传递Dlg::OnBnClickedButton1() { // TODO: 在此添加控件通知处理程序代码 b blg; INT_PTR nRt; UpdateData(TRUE); blg.c=a; nRt=blg.DoModal(); } 但是弹...
  • 弹出子窗口时设置主窗口不可点击

    千次阅读 2017-11-01 09:43:03
    1.让QMainWindow窗口在QDialog窗口上面置顶层,默认是置QDialog窗口的底层 ...子窗口名:userManagerDialog Qt::WindowFlags flags = Qt::Dialog;  userManagerDialog->setWindowFlags(flags);  
  • MFC弹出对话框几种方法总结

    万次阅读 多人点赞 2018-03-12 13:22:40
    一、点击菜单按钮弹出对话框 二、用MessageBox()函数弹框 三、MFC对话框鼠标右键弹出菜单,点击菜单弹出对话框 一、点击菜单按钮弹出对话框 1、在资源视图中(.rc文件夹下)找到menu,选择需要弹框的菜单项; 2...
  • MFC 点击按钮弹出另一个对话框

    千次阅读 2019-06-27 07:34:47
    方法一:模态对话框 资源视图--Dialog--右键--...例如:添加CMyNewDlg类,在所要调的代码中(按钮点击方法所在的文件代码),先加头文件#include "CMyNewDlg.h ",之后在按钮点击方法中: void COnclickDlg::OnBnClicked...
  • MFC子窗口

    千次阅读 2010-02-09 22:59:00
    今天学习了一下有关MFC添加子窗口的操作,首先还是要建立一个对话框,完成以后,在源文件处右键,找到添加类操作,添加一个MFC类,一个窗口就是一个类,点击完成,输入子窗口名,我们不妨记为CChild(注意:如果输入...
  • VC++ 对话框工程MFC中父窗口和子窗口传值方法

    千次阅读 多人点赞 2016-09-09 11:29:59
    C++中对话框工程MFC中父窗口和子窗口传值方法
  • MFC 对话框
  • 4. 在主窗体中也放一个按钮,取名为Button1,相应为弹出子窗口 主窗体按钮能够实现让子窗体出现的效果,但是在子窗体的按钮却无法实现里面的代码,加设断点也并没有发现又进入函数,这个问题应该如何解决???求解...
  • 方法一:模态对话框 资源视图--Dialog--右键--添加资源--新建--...例如:添加CMyDlg类,在所要调的代码中(按钮点击方法所在的文件代码),先添加头文件#include "MyDlg.h ",之后在按钮点击方法中: void COnclickDlg:
  • 1. 模态对话框资源视图->...例如:在A_dialog中点击按钮弹出B_dialog先添加B_dialog类,然后在A_dialog.cpp中先要添加头文件"B_dialog.h", 然后在按钮触发事件中:void A_dialog::OnBnClickedButton...
  • MFC子窗口传值给父窗口

    千次阅读 2018-06-27 10:53:04
    首先在父窗口的打开子窗口事件添加一下代码:void CImageAssistSystemDlg::OnNewcreate() { // TODO: 在此添加命令处理程序代码 CNewCreateDlg dlg;...}然后在子窗口的确定或者关闭按钮事件里添加以下代码...
  • mfc实现悬浮子窗口(动态实现):可以分为2种方法来实现;第一种是通过比较简单而实用的 动态实现api去修改属性;第二种办法是 实现的效果类似vs2008这样的 悬浮框、停靠等,是通过单文档 中 CDockablePane;也可以...
  • MFC DoModal弹出对话框很慢的问题

    千次阅读 2015-04-23 15:20:39
    在主对话框点击按钮弹出另一个模态对话框,点击按钮后有时很快反应,但是有时会很慢。 有网友说OnPaint里有一些资源没释放。这也是原因之一。但是我的项目里没有重载OnPaint函数。从这个思路得到启发,发现是主...
  • MFC创建子窗口子窗口初始化,修改版本,修改图标等等
  • 1、右键点击类,在弹出的菜单中选择属性,则会弹出类属性对话框 2、在类属性对话框中点击重写按钮,然后把OnInitDialog添加进去就ok了

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 5,737
精华内容 2,294
关键字:

mfc按钮弹出子窗口