powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Visual C++ Помогите пожалуйста разобраться с формами
5 сообщений из 5, страница 1 из 1
Visual C++ Помогите пожалуйста разобраться с формами
    #38446689
Snak2013
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго времени суток я столкнулся с такой проблемой: существуют 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
Visual C++ Помогите пожалуйста разобраться с формами
    #38446747
agoda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Snak2013,

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

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

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

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


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