안녕하세요. 언제나휴일입니다.
앞에서 Wafer 형식 및 관련 컨트롤을 정의하였습니다.
이제 Wafer를 코팅하는 생산 라인을 작성해 봅시다.
먼저 WaferLine 클래스를 정의하고 정상적으로 동작하는지 판별하기 위한 WaferLine 예광탄을 작성합시다.
1. WaferLine 예광탄 시연
WaferLine은 Wafer 추가, 코팅액 추가, 회전 속도 설정, 낙하 속도 설정, 코팅 시작 및 코팅한 Wafer를 확인하는 기능을 제공합니다.
여기에서는 WaferLine에 코팅해야 할 Wafer는 최대 200개를 보관할 수 있게 하드코딩할게요.
코팅액은 최대 20병을 보관할 수 있게 하드코딩합니다.
코팅액 1 병은 1000개의 쉘을 코팅할 수 있습니다.
코팅 완료한 Wafer는 보관에 제한이 없습니다.
2. WaferLine 예광탄 Layout
WaferLine 예광탄의 자식 컨트롤을 배치합시다.
Wafer(tbar_wafer)와 코팅액(tbar_pr), 회전속도(tbar_spin) 및 낙하속도(tbar_drop) 설정은 TrackBar 컨트롤로 지정합니다.
그리고 이들의 설정 값은 Label로 표시하게 합니다.(lb_wafer, lb_pr, lb_spin, lb_drop)
Wafer와 코팅액 추가를 위한 버튼을 제공합니다.(btn_wafer, btn_pr)
코팅하기 전 Wafer의 개수를 표시할 Label(lb_wcnt)과 DPanel(pn_wafer)을 제공합니다.
보유 코팅액의 병수를 표시할 Label(lb_pcnt)과 DPanel(pn_pr)을 제공합니다.
코팅 시작 버튼(btn_start)를 제공합니다.
현재 코팅에 사용하는 코팅액의 남은 양을 표시할 DPanel(pn_npr)을 제공합니다.
현재 코팅 중인 Wafer를 표시할 WaperPanel(pn_nwafer)를 제공합니다.
코팅 완료한 Wafer 개수를 표시할 Label(lb_awcnt)를 제공합니다.
코팅 완료한 Wafer를 참조할 수 있는 ComboBox(cb_awafer)를 제공합니다.
코팅 완료한 Wafer의 품질 수준을 표시할 WaferPanel(pn_awafer)를 제공합니다.
가장 최근에 발생한 정보를 표시할 StatusStip 컨트롤을 추가하고 Label 형태의 ToolStrip(ts_lb)을 추가합니다.
주기적으로 코팅할 수 있게 타이머(tm_coating)을 추가합니다.