본문 바로가기

IT프로그래밍

[C#]C# 콘솔 출력하는 방법 정리 - 윈폼프로젝트에 콘솔 보이게 하기

 

 

C언어로 코딩을 하다 보면, 결과값을 빨리 알고 싶을 때가 있습니다.

이럴 때 두 가지 선택 중에 하나를 하게 됩니다.

 

1. 값을 알고 싶은 변수에 Break Point를 걸고 Debug하여 값을 직접 찍어 보거나, 조사식에 넣어 확인하는 방법

2. 값을 알고 싶은 변수의 계산뒤에 printf로 결과 값을 출력하는 방법

 

반복문 안에서 실제 값의 증감을 하나하나 쫓아가야 하는 경우에는 1번으로 보는게 맞겠지만,

주관적인 경험상 단순 확인용이라면 2번의 방법을 (훨씬) 더 많이 사용하는 것 같습니다.

 

C에 익숙해져 있다가 C#프로젝트를 처음 만들고 실행시켰을 때 당황하게 되는 순간 중 하나는 바로

콘솔창이 없다는 것입니다.

물론 DOS느낌의 검은 화면 보다 Windows Form이 나오기 때문에 뭔가 정말 프로그래밍을 시작하게 되었다는 느낌(?)을 갖는 것은 사실이나, 그것을 차치하고 콘솔의 장점이었던 빠른 값 확인이 불가합니다.

 

하지만 사실 윈도우즈 폼 프로젝트에서도 간단한 설정 만으로도 콘솔 출력이 가능할 뿐만 아니라,

printf보다 더 간단하게 값을 출력 할 수 있습니다.

 

TextBox나 ListBox 아니면 Label에도 당연히 값을 넣는 것은 가능하지만,

개발 단계에서 단순히 값만을 확인 하는 용도, 혹은 UI에 표출은 되지 않지만 현재 프로그램의 Status라던가, 특정 변수 값등을 주기적으로 출력하여 개발자가 원하는 상태로 프로그램이 동작하고 있다는 것을 확인하기에는 콘솔에 출력하는 것도 나쁘지 않습니다.

 

 

그럼 먼저 윈도우즈 폼 프로젝트에서 콘솔창을 출력하는 매우 간단한 설정 방법입니다.


1. 프로젝트 이름을 마우스 우클릭

2. 속성을 클릭

 

3. 출력 형식 콤보박스를 클릭

4. 콘솔 응용 프로그램 선택

5. 컨트롤키 + s 로 저장

6. 프로젝트 설정 창 닫기(컨트롤 + F4)

 

출력 형식콘솔 응용 프로그램으로 바꾼 것 만으로 모든 세팅은 끝났습니다.


 

코드를 바로 실행시켜 결과를 확인해 봅니다.(컨트롤 + F5)

 

윈도우즈 폼 뒤에 콘솔창이 하나 떠억 하니 나타나는 것을 확인할 수 있습니다.

 

 

콘솔창을 만들었으니 이제 콘솔에 출력하는 방법을 알아보겠습니다.

아쉽게도 C# 윈폼 프로젝트에서 printf는 사용할 수 없습니다.

하지만 우리에겐 Console.WriteLine(); 이라는 새로운 명령어가 있습니다.

 

심지어 이 명령어는 Visual Studio에서

1. cw 타이핑

2. 엔터

3. 탭

이 3단계로 입력이 완성됩니다.

 

 

Console.WriteLine() 입력을 위한 3단계


1단계 : cw타이핑

 

2단계 : 엔터

3단계 : 탭


사용법은 ()안에 출력하고자 하는 문자열을 입력하시면 됩니다.

 

 

윈폼 프로젝트 InitializeComponent()를 수행후 콘솔에 "프로그램 시작"이라는 문자열을 출력하는 간단한 예제


소스 코드

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Console_Example
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            Console.WriteLine("프로그램 시작");
        }
    }
}

 

실행 결과


콘솔 출력의 윈폼 프로젝트의 어느곳에서나 가능합니다.

 

 

윈도우 폼 컨트롤러 이벤트 발생 시 콘솔 출력 예제


폼 디자인

소스 코드

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Console_Example
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            Console.WriteLine("프로그램 시작");
        }

        private void button1_Click(object sender, EventArgs e)
        {
            Console.WriteLine("Button 1 눌림");
        }

        private void checkBox1_CheckedChanged(object sender, EventArgs e)
        {
            var checkBox1 = sender as CheckBox;
            if (checkBox1.Checked == true)
            {
                Console.WriteLine("checkBox1 Check True");
            }
            else
            {
                Console.WriteLine("checkBox1 Check False");
            }
        }


    }
}

 

실행 결과

컨트롤러가 눌러져 이벤트가 호출될 때 마다, Console.WriteLine()에 적어놓은 문자열이 콘솔창에 출려되는 것을 확인 할 수 있습니다.


 

이상 오늘 주제였던 윈폼 프로젝트에서 콘솔 출력하기를 마칩니다.

감사합니다 >_+