用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。