C#在WinForm中打開控制台顯示


引用:

 

namespace 測試使用
{
      

    public partial class Form1 : Form
    {
        [System.Runtime.InteropServices.DllImport("kernel32.dll", SetLastError = true)]
        [return: System.Runtime.InteropServices.MarshalAs(System.Runtime.InteropServices.UnmanagedType.Bool)]
        static extern bool AllocConsole();

        [System.Runtime.InteropServices.DllImport("Kernel32")]
        public static extern void FreeConsole();


        public Form1()
        {
            InitializeComponent();
        }
        private void Form1_Load(object sender, EventArgs e)
        {
            AllocConsole();   //開啟控制台
        }
    }
}

 

輸出一

通常的代碼段: Console.WriteLine(“測試”);

效果顯示:

 

 

輸出二:

創建方法類來進行輸出

           Shell.WriteLine("注意:啟動程序...");
            Shell.WriteLine("\tWritten by wuming");
            Shell.WriteLine("{0}:{1}", "警告", "這是一條警告信息。");
            Shell.WriteLine("{0}:{1}", "錯誤", "這是一條錯誤信息!");
            Shell.WriteLine("{0}:{1}", "注意", "這是一條需要的注意信息。");
            Shell.WriteLine("");

           Shell.WriteLine("測試",ConsoleColor.DarkRed);

 

  static class Shell
    {
        /// <summary>  
        /// 輸出信息  
        /// </summary>  
        /// <param name="format"></param>  
        /// <param name="args"></param>  
           public static void WriteLine(string message, ConsoleColor GetConsoleColor)
           {
               Console.ForegroundColor = GetConsoleColor;
               Console.WriteLine(@"[{0}]{1}", DateTimeOffset.Now, message);
           }
          
        /// <summary>  
        /// 輸出信息  
        /// </summary>  
        /// <param name="format"></param>  
        /// <param name="args"></param>  
        public static void WriteLine(string format, params object[] args)
        {
            WriteLine(string.Format(format, args));
        }

        /// <summary>  
        /// 輸出信息  
        /// </summary>  
        /// <param name="output"></param>  
        public static void WriteLine(string output)
        {
            Console.ForegroundColor = GetConsoleColor(output);
            Console.WriteLine(@"[{0}]{1}", DateTimeOffset.Now, output);
        }

        /// <summary>  
        /// 根據輸出文本選擇控制台文字顏色  
        /// </summary>  
        /// <param name="output"></param>  
        /// <returns></returns>  
        private static ConsoleColor GetConsoleColor(string output)
        {
            if (output.StartsWith("警告")) return ConsoleColor.Yellow;
            if (output.StartsWith("錯誤")) return ConsoleColor.Red;
            if (output.StartsWith("注意")) return ConsoleColor.Green;
            return ConsoleColor.Gray;
        }
    }  

 

效果顯示:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM