我正在编写一个主要在控制台中工作的程序,但有时我需要使用表单。
我创建了一个 Windows 窗体,然后将输出切换到控制台。之后,我在项目中添加了一个表单 (Form2),现在我的代码如下所示:
#include "stdafx.h"
#include <iostream> // For std::cout and such
#include "Form1.h"
#include "Form2.h"
using namespace testing_forms;
[STAThreadAttribute]
int main(array<System::String ^> ^args)
{
// Enabling Windows XP visual effects before any controls are created
Application::EnableVisualStyles();
Application::SetCompatibleTextRenderingDefault(false);
/* Instructions Block 1 */
Application::Run(gcnew Form1());
/* Instructions Block 2 */
Application::Run(gcnew Form2());
/* Instructions Block 3 */
return 0;
}
所以,基本上,程序运行第一个指令块,然后调用一个表单,然后运行第二个指令块,依此类推。
但是,这不允许我在表单和控制台之间共享数据,因为它只是一个程序,所以我真的需要,比如用户名、整数等。
我能想到的唯一方法是保留一个文本文件并从控制台写入/读取/读取它以及共享信息的表单(我没有测试过),但是,老实说,我不太喜欢这个解决方案。
那么,如何仅使用(最好)变量在 Windows 窗体和控制台之间来回共享数据?