Я хочу создать несколько форм, и когда я нажму кнопку «Назад», он вернется в форму1. Я пробовал это C++/CLI - how to open a new form and back, но когда я нажимаю кнопку в форме2, чтобы вернуться к form1, он получает ошибку. "NullReferenceException был Неизвестное"возвращение (назад) формы windows C++
Form1
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
/* Form1::Hide();
Form2^ form2 = gcnew Form2();
form2->ShowDialog();*/
Form2^frm2 = gcnew Form2();
frm2->Show();
this->Hide();
}
Form2
Form2(System::Windows::Forms::Form^frm1)
{
otherform = frm1;
InitializeComponent();
}
private: System::Windows::Forms::Form^otherform;
#pragma endregion
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e
{
this->Hide();
otherform->Show();
}
У вас есть конструктор, который принимает форму ссылки. Вы не используете его. Так что, * otherform * все еще nullptr. Kaboom. –
Может быть, вы должны вызвать конструктор 'Form2', не являющийся по умолчанию, следующим образом:' Form2^frm2 = gcnew Form2 (this); ' – sgarizvi