타이머 구현...
# 2) .Net ( Vs 2005 )/WinForm2010. 4. 8. 23:13
훈스 게시판에 힘들게 타이머를 구현하시는 분이 계셔서 퇴근하고 잠깐 머리도 식힐겸... 1시간가량 작성해보았다.
Clock개념을 이용해서 true 가 들어올때마다 계수를 하여 0, 0 , 0 이 될때까지... 카운트를 한다.
카운트 완료시 백그라운드는 색이 바뀐다.
신호 제어를 통해 전체 클럭을 주고 안주고 한다.
머 그닥 달건 없고... 소스에 주석!!을 통해 추상화 부터 구현까지 어떤 과정을 거쳤는지 간단히 써놓았다.
/*
타이머를 우선 추상화 합니다.
*
* Reset ();
* Setting( 시간)
* Start(); -> Pause();
* Stop();
*
* 기본적인 타이머 동작을 우선 살펴보면.
*
* 지정된 시간을 역카운트 해서 00: 00: 00이 되면 자동 멈추고 알람발생
* 지정된 시간을 역카운트 중 Pause상태가 되면 Reset() Or Start() or Stop() 가능
*
* 조금더... 생각해서 실제로 디지탈적으로 구현하기 위해 클럭 개념을 이용합니다.
*
* Tick당 계수되는걸로 구현합니다. 우선 간단히 추상화가 되었고
*
* 이에 맞춰 이 타이머에 필요한 부품들을 생각해봅니다.
*
* 1. 기본적인 디스플레이 ( 라벨 또는 TextBox ) : 입력가능하여야 하므로 Textbox로... 선정.
* 2 . 타이머별로 이름붙이는건 옵션으로 해서 라벨하나더.
* 3. 클럭을 받아들일 인터페이스
* 4. 이 인터페이스에 부탁될 이벤트... or 내부 메서드
* 5. 타이머가 구동중인지 알아볼 상태플래그.
*
* 대충 요약 완료!
*/
주석에 맞춰 코딩을 시작해서 1시간가량에 끝났다.
쩝!!
'# 2) .Net ( Vs 2005 ) > WinForm' 카테고리의 다른 글
런타임상에서의 컨트롤 사이즈 드래그!!! (0) | 2010.06.10 |
---|---|
서버 - 클라이언트 ... (0) | 2010.05.08 |
속성에 UIEditor 달기( PropertyGrid 이용 ) (0) | 2010.03.25 |
MDI 폼 스크롤바 없애기 (0) | 2010.03.25 |
폼에 파일 드래그앤드랍 하기 (0) | 2010.03.25 |