Возвращение (назад) формы windows С++

Вопрос: Я хочу создать несколько форм, и когда я нажму кнопку "Назад", он вернется в форму1. Я попробовал это C++/CLI - как открыть новую форму и обратно, но когда я нажимаю кнопку в форме2, чтобы вернуться к form1, она получает сообщение об ошибке. "Исключение NullReferenceException было необработанным" Form1 private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {

Вопрос:

Я хочу создать несколько форм, и когда я нажму кнопку “Назад”, он вернется в форму1. Я попробовал это C++/CLI – как открыть новую форму и обратно, но когда я нажимаю кнопку в форме2, чтобы вернуться к form1, она получает сообщение об ошибке. “Исключение NullReferenceException было необработанным”

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(); } Лучший ответ:

Вы создали второй конструктор Form2 но вы не используете его внутри button1_Click.

Вместо этого:

Form2 ^ frm2 = gcnew Form2();

Сделай это:

Form2 ^ frm2 = gcnew Form2(this);

Оцените статью
Добавить комментарий