powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / MS Visual Studio 2010 - получение строки из TextBox и запись ее в текстовый файл - Visual
6 сообщений из 6, страница 1 из 1
MS Visual Studio 2010 - получение строки из TextBox и запись ее в текстовый файл - Visual
    #39552266
Sergey1812
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте!

Работаю в Microsoft Visual Studio 2010.
Создан проект Windows Forms - "TestProject". На форме Form1 имеется текстовое поле TextBox1.

Требуется присвоить переменной userName значение из TextBox1, а затем записать это значение в текстовый файл.

Код Form1.h:
Код: 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.
#pragma once

extern int userName;

namespace TestProject {

	using namespace System;
	using namespace System::ComponentModel;
	using namespace System::Collections;
	using namespace System::Windows::Forms;
	using namespace System::Data;
	using namespace System::Drawing;
	
	/// <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^  textBox1;
	protected: 


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

#pragma region Windows Form Designer generated code
		/// <summary>
		/// Обязательный метод для поддержки конструктора - не изменяйте
		/// содержимое данного метода при помощи редактора кода.
		/// </summary>
		void InitializeComponent(void)
		{
			this->textBox1 = (gcnew System::Windows::Forms::TextBox());
			this->SuspendLayout();
			// 
			// textBox1
			// 
			this->textBox1->Location = System::Drawing::Point(38, 117);
			this->textBox1->Name = L"textBox1";
			this->textBox1->Size = System::Drawing::Size(214, 20);
			this->textBox1->TabIndex = 1;
			this->textBox1->TextChanged += gcnew System::EventHandler(this, &Form1::textBox1_TextChanged);
			// 
			// Form1
			// 
			this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);
			this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
			this->ClientSize = System::Drawing::Size(284, 262);
			this->Controls->Add(this->textBox1);
			this->Name = L"Form1";
			this->Text = L"Form1";
			this->ResumeLayout(false);
			this->PerformLayout();

		}
#pragma endregion

	private: System::Void textBox1_TextChanged(System::Object^  sender, System::EventArgs^  e) {
				 userName = Convert::ToInt16(this->textBox1->Text);
			 }
	};
}



Код TestProject.cpp:
Код: 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.
// TestProject.cpp: главный файл проекта.

#include "stdafx.h"
#include "Form1.h"

using namespace TestProject;
using namespace System::IO;

int userName;

//using namespace System::Runtime::InteropServices;
[STAThreadAttribute]
int main(array<System::String ^> ^args)
{
	// Включение визуальных эффектов Windows XP до создания каких-либо элементов управления
	Application::EnableVisualStyles();
	Application::SetCompatibleTextRenderingDefault(false); 

	// Создание главного окна и его запуск
	Application::Run(gcnew Form1());
	
	System::DateTime moment = DateTime::Now;
	String^ fileName = "target " + moment.Hour + "-" + moment.Minute + "-" + moment.Second + " " + moment.Day + "." + moment.Month + "." + moment.Year + ".txt";
	StreamWriter^ sw = gcnew StreamWriter(fileName);
	sw->WriteLine(userName);
	sw->Close();
	
	return 0;
}



Код выше работает с числами integer. Но как его изменить, чтобы передавать текстовую строку - имя пользователя (кириллические и латинские символы)?
Заранее благодарю за помощь.

Модератор: Тема перенесена из форума "C++".
...
Рейтинг: 0 / 0
MS Visual Studio 2010 - получение строки из TextBox и запись ее в текстовый файл - Visual
    #39552343
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ФеерЫчно!

Афтар сделал всё, чтобы записать именно INT, а теперь спрашивает, а как же ему записать СТРОКУ?
Да так же:

https://msdn.microsoft.com/ru-ru/library/7ack4zyt(v=vs.110).aspx
...
Рейтинг: 0 / 0
MS Visual Studio 2010 - получение строки из TextBox и запись ее в текстовый файл - Visual
    #39552415
Sergey1812
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
MasterZivФеерЫчно!

Афтар сделал всё, чтобы записать именно INT, а теперь спрашивает, а как же ему записать СТРОКУ?
Да так же:

https://msdn.microsoft.com/ru-ru/library/7ack4zyt(v=vs.110).aspx

Так же не получается. C++/CLI не позволяет объявить глобальную переменную String^.
...
Рейтинг: 0 / 0
MS Visual Studio 2010 - получение строки из TextBox и запись ее в текстовый файл - Visual
    #39552423
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Код: c#
1.
userName = Convert::ToInt16(this->textBox1->Text);


Нафига название файла переводить в int?

Но даже если так, то

Код: c#
1.
sw->WriteLine(userName.ToString());
...
Рейтинг: 0 / 0
MS Visual Studio 2010 - получение строки из TextBox и запись ее в текстовый файл - Visual
    #39552426
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Cat2
Код: c#
1.
userName = Convert::ToInt16(this->textBox1->Text);



Нафига название файла переводить в int?

Но даже если так, то

Код: c#
1.
sw->WriteLine(userName.ToString());


Чушь написал, извините. Невнимательно читал условие
...
Рейтинг: 0 / 0
MS Visual Studio 2010 - получение строки из TextBox и запись ее в текстовый файл - Visual
    #39561636
.NET
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergey1812MasterZivФеерЫчно!

Афтар сделал всё, чтобы записать именно INT, а теперь спрашивает, а как же ему записать СТРОКУ?
Да так же:

https://msdn.microsoft.com/ru-ru/library/7ack4zyt(v=vs.110).aspx

Так же не получается. C++/CLI не позволяет объявить глобальную переменную String^.
Объяви переменную userName в форме.
Тогда main будет примерно такой наверное.
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
int main(array<System::String ^> ^args)
{
	// Включение визуальных эффектов Windows XP до создания каких-либо элементов управления
	Application::EnableVisualStyles();
	Application::SetCompatibleTextRenderingDefault(false); 

	// Создание главного окна и его запуск
        Form^ _form = gcnew Form1();
	Application::Run(_form);
	
	System::DateTime moment = DateTime::Now;
	String^ fileName = "target " + moment.Hour + "-" + moment.Minute + "-" + moment.Second + " " + moment.Day + "." + moment.Month + "." + moment.Year + ".txt";
	StreamWriter^ sw = gcnew StreamWriter(fileName);
	sw->WriteLine(_form.userName);
	sw->Close();
	
	return 0;
}


функцию не тестировал.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / MS Visual Studio 2010 - получение строки из TextBox и запись ее в текстовый файл - Visual
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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