コンソール出力を Windows フォーム アプリケーションに統合する
開発者は、Windows フォーム アプリケーション内でコンソール出力を直接表示したり、フォームの横にコンソール ウィンドウを作成したりする必要がある場合があります。 このガイドでは、これを実現する方法の概要を説明します。
次の例を考えてみましょう:
<code class="language-csharp">using System; using System.Windows.Forms; class TestApp { static void Main() { Console.WriteLine("Test output"); MessageBox.Show("Test message"); } }</code>
/target:winexe
コンパイラ スイッチを使用せずにコンパイルすると、コンソール出力とメッセージ ボックスの両方が表示されます。ただし、/target:winexe
を使用するとコンソールが非表示になり、メッセージ ボックスのみが残ります。
Windows フォーム プロジェクトへのコンソールの追加
Windows フォーム アプリケーションでコンソール出力を有効にするには、次のコードを使用します。
<code class="language-csharp">using System; using System.Runtime.InteropServices; using System.Windows.Forms; public partial class Form1 : Form { [DllImport("kernel32.dll", SetLastError = true)] [return: MarshalAs(UnmanagedType.Bool)] static extern bool AllocConsole(); public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { AllocConsole(); } }</code>
ここでは、AllocConsole()
イベントで Form_Load
が呼び出されます。これにより、フォームのロード時に表示される新しいコンソール ウィンドウが作成されます。 これにより、Windows フォーム環境内でコンソールベースのデバッグやユーザー対話が可能になります。
以上がWindows フォーム アプリケーションでコンソール出力を表示するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。