Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Visual C++ Помогите пожалуйста разобраться с формами / 5 сообщений из 5, страница 1 из 1
30.10.2013, 14:28
    #38446689
Snak2013
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Visual C++ Помогите пожалуйста разобраться с формами
Доброго времени суток я столкнулся с такой проблемой: существуют 2 формы при нажатии на кнопку на первой форме она скрывается и появляется 2 форма на 2 форме тоже предполагается кнопка при нажатии на которую 2 форма должна закрыться а 1 появиться. Вторая форма из первой вызывается без проблем, но при попытке таким же образом из 2 вызвать первую выдет кучу ошибок я не как не могу понять что делаю неправильно подскажите плиз.
Код первой формы
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
#pragma once
#include "stdafx.h"
#include "Form2.h"

namespace XML {

	using namespace System;
	using namespace System::ComponentModel;
	using namespace System::Collections;
	using namespace System::Windows::Forms;
	using namespace System::Data;
	using namespace System::Drawing;
	using namespace MySql::Data::MySqlClient;

	/// <summary>
	/// Сводка для Form1
	/// </summary>
	public ref class Form1 : public System::Windows::Forms::Form
	{
	public:
		Form1(void)
		{
			InitializeComponent();

//
			//TODO: добавьте код конструктора
			//
		}

	protected:
		/// <summary>
		/// Освободить все используемые ресурсы.
		/// </summary>
		~Form1()
		{
			if (components)
			{
				delete components;
			}
		}
	private: System::Windows::Forms::TextBox^  Login_txt;
	protected: 

	private: System::Windows::Forms::TextBox^  Password_txt;
	private: System::Windows::Forms::Button^  button1;
	private: System::Windows::Forms::Button^  button2;
	protected: 


	private:
		/// <summary>
		/// Требуется переменная конструктора.
		/// </summary>
		System::ComponentModel::Container ^components;

#pragma region Windows Form Designer generated code
		/// <summary>
		/// Обязательный метод для поддержки конструктора - не изменяйте
		/// содержимое данного метода при помощи редактора кода.
		/// </summary>
		void InitializeComponent(void)
		{
			this->Login_txt = (gcnew System::Windows::Forms::TextBox());
			this->Password_txt = (gcnew System::Windows::Forms::TextBox());
			this->button1 = (gcnew System::Windows::Forms::Button());
			this->button2 = (gcnew System::Windows::Forms::Button());
			this->SuspendLayout();
			// 
			// Login_txt
			// 
			this->Login_txt->Location = System::Drawing::Point(431, 102);
			this->Login_txt->Name = L"Login_txt";
			this->Login_txt->Size = System::Drawing::Size(100, 20);
			this->Login_txt->TabIndex = 0;
			// 
			// Password_txt
			// 
			this->Password_txt->Location = System::Drawing::Point(431, 139);
			this->Password_txt->Name = L"Password_txt";
			this->Password_txt->Size = System::Drawing::Size(100, 20);
			this->Password_txt->TabIndex = 1;
			// 
			// button1
			// 
			this->button1->Location = System::Drawing::Point(431, 192);
			this->button1->Name = L"button1";
			this->button1->Size = System::Drawing::Size(75, 23);
			this->button1->TabIndex = 2;
			this->button1->Text = L"button1";
			this->button1->UseVisualStyleBackColor = true;
			this->button1->Click += gcnew System::EventHandler(this, &Form1::button1_Click);
			// 
			// button2
			// 
			this->button2->Location = System::Drawing::Point(523, 192);
			this->button2->Name = L"button2";
			this->button2->Size = System::Drawing::Size(75, 23);
			this->button2->TabIndex = 3;
			this->button2->Text = L"button2";
			this->button2->UseVisualStyleBackColor = true;
			this->button2->Click += gcnew System::EventHandler(this, &Form1::button2_Click);
			// 
			// Form1
			// 
			this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);
			this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
			this->ClientSize = System::Drawing::Size(637, 348);
			this->Controls->Add(this->button2);
			this->Controls->Add(this->button1);
			this->Controls->Add(this->Password_txt);
			this->Controls->Add(this->Login_txt);
			this->Name = L"Form1";
			this->Text = L"Form1";
			this->ResumeLayout(false);
			this->PerformLayout();
	
			 }
#pragma endregion
	private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
				 Form2^ f2 = gcnew Form2;
				 this->Hide();
				 f2->ShowDialog();
			 }
	private: System::Void button2_Click(System::Object^  sender, System::EventArgs^  e) {
				 Application::Exit();
			 }
};
}



Код второй формы:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
#pragma once
#include "stdafx.h"
#include "Form1.h"

namespace XML {

	using namespace System;
	using namespace System::ComponentModel;
	using namespace System::Collections;
	using namespace System::Windows::Forms;
	using namespace System::Data;
	using namespace System::Drawing;
	using namespace MySql::Data::MySqlClient;

	/// <summary>
	/// Сводка для Form2
	/// </summary>
	public ref class Form2 : public System::Windows::Forms::Form
	{
	public:
		Form2(void)
		{
			InitializeComponent();
			//
			//TODO: добавьте код конструктора
			//
		}

	protected:
		/// <summary>
		/// Освободить все используемые ресурсы.
		/// </summary>
		~Form2()
		{
			if (components)
			{
				delete components;
			}
		}
	private: System::Windows::Forms::Button^  button1;
	protected: 

	private:
		/// <summary>
		/// Требуется переменная конструктора.
		/// </summary>
		System::ComponentModel::Container ^components;

#pragma region Windows Form Designer generated code
		/// <summary>
		/// Обязательный метод для поддержки конструктора - не изменяйте
		/// содержимое данного метода при помощи редактора кода.
		/// </summary>
		void InitializeComponent(void)
		{
			this->button1 = (gcnew System::Windows::Forms::Button());
			this->SuspendLayout();
			// 
			// button1
			// 
			this->button1->Location = System::Drawing::Point(219, 160);
			this->button1->Name = L"button1";
			this->button1->Size = System::Drawing::Size(75, 23);
			this->button1->TabIndex = 0;
			this->button1->Text = L"button1";
			this->button1->UseVisualStyleBackColor = true;
			this->button1->Click += gcnew System::EventHandler(this, &Form2::button1_Click);
			// 
			// Form2
			// 
			this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);
			this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
			this->ClientSize = System::Drawing::Size(373, 268);
			this->Controls->Add(this->button1);
			this->Name = L"Form2";
			this->Text = L"Form2";
			this->ResumeLayout(false);

		}
#pragma endregion
	private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {

				 Form1^ f1 = gcnew Form1;
				 this->Hide();
				 f1->ShowDialog();
			 }
	};
}
...
Рейтинг: 0 / 0
30.10.2013, 14:49
    #38446747
agoda
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Visual C++ Помогите пожалуйста разобраться с формами
Snak2013,

Насколько я понял это С#
Вторая форма модально вызывается из первой. Нужно, просто, в первой форме после того как ShowDialog вернет управление, сделать первую форму видимой, а вторую форму, по ее кнопке, просто зарыть.
...
Рейтинг: 0 / 0
30.10.2013, 15:09
    #38446790
agoda
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Visual C++ Помогите пожалуйста разобраться с формами
Стар, я стал, такой зверь как C++/CLI мимо меня пробежал.
...
Рейтинг: 0 / 0
31.10.2013, 09:56
    #38447785
Snak2013
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Visual C++ Помогите пожалуйста разобраться с формами
agodaSnak2013,

Насколько я понял это С#
Вторая форма модально вызывается из первой. Нужно, просто, в первой форме после того как ShowDialog вернет управление, сделать первую форму видимой, а вторую форму, по ее кнопке, просто зарыть.

Ясно спасибо попробуй
...
Рейтинг: 0 / 0
31.10.2013, 15:23
    #38448506
petalvik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Visual C++ Помогите пожалуйста разобраться с формами
Snak2013,

во второй форме у тебя создаётся новый экземпляр первой формы. А нужно передавать ссылку на первую форму в конструктор второй, и её показывать после закрытия второй.
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Visual C++ Помогите пожалуйста разобраться с формами / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]