컴퓨터/WinForm
[WinForm]
아기상어
2020. 6. 15. 18:30
윈폼 애플리케이션
컨트롤을 사용하여 프로그래머가 원하는 화면을 구성하고 이벤트가 발생했을 때 처리하고자 하는 작업을
이벤트 처리기에 기술하는 방식으로 프로그래밍된 프로그램
폼클래스 : 윈도우 폼을 나타내는 클래스
컴포넌트 클래스 : 개념적인 부분을 나타내는 클래스
컨트롤 클래스 : 폼에 직접 표시되는 컨트롤을 위하 클래스
소스코드
Main() 메소드 : 응용 프로그램의 시작점, Application 클래스의 Run() 메소드를 호출하여 실행
partial() : 하나의 클래스를 두개로 분리해서 쓰기 위한 키워드
InitializeComponent() : 디자인을 불러오는 메서드
윈폼에서 더블클릭 하는건 그 폼이 가진 이벤트를 생성시킴, 속성에 번개모양 누르면 나옴
MessageBox는 모달창이다. 모달창을 끄지 않는 이상 메인프로그램이 꺼지지 않는다.
예제) 윈폼으로 타이머 만들기
private void timer1_Tick(object sender, EventArgs e)
{
DateTime now = DateTime.Now;
label1.Text = now.ToString("HH:mm:ss");
}
아이콘 바꾸기
프로젝트 속성 - 아이콘 및 매니페스트(아이콘 바꾸고 저장)
Form 창에서 속성 - icon 에서 파일선택
Form 클래스의 메소드
Load()
Close() - FormClosed(), FormClosing()
Activate()
AddOwnedForm()
RemoveOwnedForm()
SetDesktopBounds()
SetDesktopLocation()
private void Form1_Load(object sender, EventArgs e)
{
MessageBox.Show("폼 로드시 발생");
}
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
MessageBox.Show("폼 클로즈시 발생");
}
private void Form1_Activated(object sender, EventArgs e)
{
MessageBox.Show("폼 활성화시 발생");
}
폼 닫을떄 진짜 닫을껀지 물어보는 창 만들기
private void Form1_FormClosing_1(object sender, FormClosingEventArgs e)
{
if (MessageBox.Show("진짜 닫을래?", "d경고d",
MessageBoxButtons.YesNo,MessageBoxIcon.Error) == DialogResult.Yes)
{
e.Cancel = false; // 클로징 이벤트를 취소 안시켜서 종료
}
else
{
e.Cancel = true; // 클로징 이벤트를 취소시켜서 종료안됨
}
}