我无法通过单击按钮关闭
Form1
和打开 Form3
。
我已经尝试过这段代码:
#include "Welcome.h"
#include "Login.h"
void __fastcall TForm1::LoginButtonClick(TObject *Sender)
{
TForm1 *CurrentForm = new TForm1(this);
CurrentForm->Close();
TForm3 *NewForm = new TForm3(this);
NewForm->Show();
}
这是代码中不起作用的部分:
TForm1 *CurrentForm = new TForm1(this);
CurrentForm->Close();
我可以更改什么以使
Form1
在单击按钮时关闭?
摆脱
CurrentForm
。您正在创建一个全新的表单,只是为了立即关闭它。您需要在 Close()
对象上调用 this
:
void __fastcall TForm1::LoginButtonClick(TObject *Sender)
{
Close(); // this->Close();
TForm3 *NewForm = new TForm3(this);
NewForm->Show();
}
请注意,
TForm1
通常是MainForm
的默认名称,如果您Close()
MainForm
,那么您的应用程序将退出。如果您需要在不退出应用程序的情况下“关闭” MainForm
,您可以改为 Hide()
MainForm
。