首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > VC >

请问:VS2010,VC++.NET中两个Form相互调用有关问题

2012-02-19 
请教:VS2010,VC++.NET中两个Form相互调用问题用VS2010,VC++.NET编写Winform程序。工程名为Application做了

请教:VS2010,VC++.NET中两个Form相互调用问题
用VS2010,VC++.NET编写Winform程序。工程名为Application
做了两个Form,分别为Form1,Form2
Form1中有个按钮可以进入Form2,Form2中有个按钮可以返回到Form1
应该如何写。

我是想这么做的
1. Application.cpp中(就是整个程序main函数所在的那个文件),将其中的 Application::Run(gcnew Form1());
Form1^ forMainInterface = gcnew Form1();
Application::Run(MainInterface);
  想的是可以对生成的窗口进行Show、Hide等操作。
2. Form1中用于进入Form2界面的按钮的代码为
  Form2^ ParameterSetting = gcnew Form2(); 
  ParameterSetting->Show();
  Hide();  
3. Form2中用于返回Form1界面的按钮的代码为
  forMainInterface->Show();
  Close();  
  步骤1中,为了生成Form1的对象,Application.cpp中就要 include "Form1.h"
  步骤2中,为了生成Form2的对象,Form1.h中就要 include "Form2.h"
  步骤3中,为了使用对象forMainInterface,Form2.h中就要 include "Application.cpp"
  这样就循环include了,好像编译不能通过。

[解决办法]
一般是在.h文件中声明,如 ref class A,然后在对应的cpp中#include "A.h",在cpp方法实现gcnew A。


热点排行