Работа с двумя формами

Работа с двумя формами

Создание формы 2

Проект->Добавить новый элемент->Visual C++->UI->Форма Windows Forms
Меняем название на MyForm2.h и жмем "Добавить".

Теперь имеем две формы: MyForm.h и MyForm2.h.

Как перейти к форме 2 по нажатию кнопки в форме 1

Для начала в коде формы 1 после #pragma once добавим #include "MyForm2.h".
Теперь в коде кнопки перехода к форме 2 напишем:

MyForm2^ frm = gcnew MyForm2();
frm->Show();                     //вызов формы 2

 

Перейдем к коду формы 2

Как перенести записанную в textBox строку формы 2 в textBox формы 1

В коде формы 2 вставим текс, как показано в примере:

public ref class MyForm2 : public System::Windows::Forms::Form
	{
	public:
                // почти в самом верху добавим эти три строчки
		String^ Str(){
			return textBox1->Text;
		}

Теперь создадим в форме 2 button1 и button2.
В свойствах кнопки button1 в разделе DialogResult поставим OK.              
А в свойствах кнопки button2 в разделе DialogResult поставим Cancel.

Код для них писать не надо! Об этом авторы позаботились.

Вернемся к коду формы 1

В коде кнопки перехода после MyForm2^ frm = gcnew MyForm2(); напишем:

if(frm->ShowDialog()==System::Windows::Forms::DialogResult::OK){
          String^ str = frm->Str();
          textBox1->Text = str;      
}

Запускаем программу.