C# 윈도우 폼 기반의 헬로우 예제 (텍스트상자, 버튼, 지연)
글. 오상문 sualchi@daum.net
(1) 윈도우 폼 기반의 C# 프로젝트를 만듭니다. (이름은 기본 사용: WindowsFormsApp1)
(2) 폼 화면 디자인은 다음과 같습니다.
(3) 각 버튼을 더블클릭하여 다음처럼 코딩합니다.
붉은색 부분이 추가한 부분입니다.
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
{
private int hello = -1; // 인사를 두 종류로 번갈아가며 하기 위한 상태 변수
public Form1()
{
InitializeComponent();
}
// 지연 함수입니다. 1/1000초 단위로 기다립니다.
// 참고 출처:
http://junibong.tistory.com/11
private static DateTime myDelay(int ms)
{
DateTime ThisMoment = DateTime.Now;
TimeSpan duration = new TimeSpan(0, 0, 0, 0, ms);
DateTime AfterWards = ThisMoment.Add(duration);
while (AfterWards >= ThisMoment)
{
System.Windows.Forms.Application.DoEvents();
ThisMoment = DateTime.Now;
}
return DateTime.Now;
}
// 인사 단추를 클릭하면 동작
private void button1_Click(object sender, EventArgs e)
{
hello *= -1; // 상태 변수를 바꿈
if (hello == 1) // 상태 변수 값에 따라 인사함
textBox1.Text = "반가워요!";
else
textBox1.Text = "안녕하세요?";
}
// 종료 단추를 클릭하면 동작
private void button2_Click(object sender, EventArgs e)
{
textBox1.Text = "또 만나요..."; // 종료 인사
myDelay(2000); // 2초 기다림
Close(); // 프로그램 종료
}
}
}
<이상>
'C#, Unity' 카테고리의 다른 글
C# 동적으로 단추 생성하기 (0) | 2018.07.09 |
---|---|
C#, 로또 출력 윈도우 폼 예제 (0) | 2018.07.08 |
유니티 게임 개발 강좌 (youtube) (0) | 2018.04.12 |
[C# 강좌] 예제로 배우는 C# (유튜브 동영상 강좌) 초급+중급 (0) | 2018.03.21 |
C# 한방에 배우기 (한국어Korean CC) C# 강좌 (0) | 2018.03.21 |