Visual Studio 는 예전에 유료 프로그램이었다가
언젠가부터 C#이 오픈소스로 풀리고 나서 일부 한정 무료로 윈도우 프로그램을 개발할 수 있습니다.
예전에는 400만원의 비용을 내고 라이선스를 구매하여 개발을 진행했어야 했지만
지금은 점유율을 중점으로 생각하여 만드는 것 같아요.
윈도우 프로그램 개발을 위해 먼저 비주얼 스튜디오 2022를 다운 받아 설치한 뒤
새 프로젝트를 만듭니다. Windows Form 앱 (.NET Framework) 를 클릭하면 설치할 수 있습니다.
비주얼 스튜디오에서 가장 강력한 기능입니다.
폼을 GUI를 직접 눈으로 수정하거나 추가 할 수 있다는 점이죠.
Shift + F7 을 누르거나 Form1.cs 를 우측클릭하여
디자이너 보기 버튼을 클릭하면 됩니다.
윈도우 프로그램 개발에서는 이 기능이 굉장히 편하죠.
폼은 도구 상자를 통해 여러 도구들을 추가할 수 있습니다.
도구 상자가 보이지 않는 경우는 보기를 클릭하여 도구 상자를 클릭하여 추가할 수 있습니다.
라벨을 위와 같이 가져와서 만듭니다.
처음은 어려워보이고 귀찮을 수 있지만
실제로는 별거 없이 쓱쓱 가져오면 1분만에 이 화면을 만들 수 있으니 꼭 시도해보세요
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 WindowsFormsApp1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
MessageBox.Show($"Hello {textBox1.Text} { textBox2.Text }");
}
private void label1_Click(object sender, EventArgs e)
{
}
}
}
MessageBox.Show($"Hello {textBox1.Text} { textBox2.Text }");
핵심 코드는 위의 한줄입니다. 의외로 단순하죠?
일반적인 C# 코드를 볼 수 있습니다. 여기서 안정화를 위해 캡슐화를 추가 작업하면
개발에 속도를 낼 수 있을겁니다.
button1_Click 이라는 클릭 함수는 자동으로 생성됩니다.
실행하면 위와 같이 진행됩니다.
코드가 정상적으로 적용되어 실행되는 모습을 볼 수 있어요.
private void button1_Click(object sender, EventArgs e)
{
MessageBox.Show($"Hello {textBox1.Text} { textBox2.Text }");
textBox3.Text = $"Hello {textBox1.Text} {textBox2.Text}";
}
public Form1()
{
InitializeComponent();
label1.Text = "Last Name";
label2.Text = "Full Name";
}
label 의 Text 값을 변경할 수 있습니다.
Form1() 함수에서 값을 추가하면 적용되는 것을 확인할 수 있습니다.
private void button1_Click(object sender, EventArgs e)
{
MessageBox.Show($"Hello {textBox1.Text} { textBox2.Text }");
textBox3.Text = $"Hello {textBox1.Text} {textBox2.Text}";
progressBar1.Value += 50;
}
progressBar Value 속성에서 만약 100이 넘어버리면 에러가 나게 됩니다.
private void button1_Click(object sender, EventArgs e)
{
Form1 frm = new Form1();
frm.Show();
}
버튼을 클릭했을 때 폼을 열 수 있습니다.
기존에 있던 Form1 을 실행할 수 있으며
각개마다 독립된 환경으로 열리게 됩니다.
새로운 폼을 추가할 수 있습니다. 우측 클릭하여 [추가 > 양식] 을 누른 뒤 폼을 추가하면 됩니다.
private void button1_Click(object sender, EventArgs e)
{
Form2 frm = new Form2();
frm.Show();
}
버튼을 누를 때 Form2 를 실행할 수 있습니다.
Program.cs 파일을 열어보면 프로그램 시작 시 Form1 을 시작하는 것을 확인할 수 있습니다.
도구 상자에서 MenuStrip 을 드래그하여 가져옵니다.
직접 GUI 에디터에서 위와 같이 수정할 수 있습니다.
실행시작 F5
Debugging은 F11
함수 건너뛰기 Debugging은 F10 이에요