[C# 기초강의] Ch 20. WinForm으로 만드는 사용자 인터페이스

728x90

 

https://www.youtube.com/watch?v=OYgYBgdfV1k&list=PLVsNizTWUw7GN8wPRhclbKuQa9aI9Cj2V&index=21

 

📌 WinForm

  • .NET UI라이브러리
  1. WInForm : 익히기 쉽고 높은 생산성
  2. WPF : 세련된 UI와 화려한 효과를 제공하나 학습곡선이 가파흠
  • WYSIWYG 방식의 GUI 프로그램 개발

 

◾ 윈도우를 띄우는 과정

using System;

namespace SimpleWindow 
{
	class MainApp : System.Windows.Forms.Form
    {
    	static void Main(string[] args)
        {
        	System.Windows.Forms.Application.Run(new MainApp());
        }
    }
}

 

◾ Application 클래스

  • 윈도우 응용 프로그램 시작/종료 메서드 제공
    시작 : Application.Run()
    종료 : Application.Exit()
  • 윈도우 메세지 처리하는 것

 

◾ 메세지 필터링

  • 윈도우 메세지의 생성 및 처리
  1. 하드웨어로부터 인터럽트 발생
  2. 해당 인터럽트는 윈도우에 의해 윈도우 메세지 생성
  3. 윈도우 메세지를 응용 프로그램에게 전송
  4. 응용 프로그램은 해당 메세지 처리
  • 메세지 필터는 관심 있는 메세지를 정제
  • Application 클래스가 메세지 필터 제공
  • Application.AddMessageFilter() 메서드를 이용하여 프로그램에 메세지 필터 설치
  • 메세지 필터는 IMessageFilter 인터페이스 상속

 

◾ System.Windows.Forms.Form 클래스

  • 다양한 컨트롤을 올려 사용할 수 있는 도화지
  • 다양한 윈도우 메세지에 대응하는 이벤트 정의
    → 이벤트에 대한 처리 코드 구현이 간단해짐

◾ 컨트롤

  • 윈도우 운영체제가 제공하는 사용자 인터페이스 요소
  • 메뉴, 콤보박스, 리스트뷰, 버튼, 텍스트박스 등과 같은 표준 컨트롤 제공
  • 컨트롤은 아래 절차로 Form위에 배치
  1. 컨트롤외 인스턴스 생성
  2. 컨트롤의 프로퍼티에 값 지정
  3. 컨트롤의 이벤트에 이벤트 처리기 등록
  4. 폼에 컨트롤 추가
728x90