일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 실습으로 다지는 c#
- 파이썬
- 원격 제어 프로그램
- 언제나휴일
- 소스 코드
- 언제나 휴일
- 소켓 통신
- 추천
- c언어
- c#
- 네트워크 프로그래밍
- 동영상
- 졸업 작품 소재
- 안드로이드 앱 개발
- 동영상 강의
- 클래스 다이어그램
- 강의
- 실습
- 무료 동영상 강의
- 독립기념관
- 산책하기 좋은 곳
- 표준 라이브러리 함수
- 표준 입출력
- 알고리즘
- C++
- 프로젝트
- Windows Forms
- 충남 천안
- 캡슐화
- 유튜브 동영상 강의
- Today
- Total
목록전체 글 (353)
프로그래밍 언어 및 기술 [언제나휴일]
안녕하세요. 언제나휴일입니다. 이번에는 현재까지 다룬 내용(윈도우 클래스 등록 및 개체 생성, 기본 그리기, 키보드 입력, 마우스 입력, 타이머 입력)을 정리하는 실습을 할게요. 실습할 시나리오는 다음과 같습니다. 주어진 공간 안에서 도형을 이동시키는 프로그램 방향 키를 누르면 도형의 방향이 바뀐다. space 키를 누르면 도형은 멈춘다. 현재 방향과 도형의 좌표(논리 좌표)를 출력하시오. 마우스 왼쪽 버튼을 클릭하면 도형이 바뀐다.(사각형->원->사각형->원…) 도형이 움직일 수 있는 공간을 표시하고 논리 좌표에 맞게 모눈을 그리시오. 도형은 움직일 수 있는 공간 경계 밖으로 이동할 수 없어요. 진입점에서는 윈도우 클래스 등록, 개체 생성, 메시지 루프를 작성합니다. #include #define MY..
안녕하세요. 언제나휴일입니다. Windows API에서 주기적인 작업을 할 수 있게 타이머를 제공하고 있어요. 타이머를 생성할 때는 SetTimer 함수를 이용하고 해제할 때는 KillTimer를 사용합니다. UINT_PTR WINAPI SetTimer(HWND hWnd,UINT_PTR nIDEvent,UINT uElapse, TIMERPROC lpTimerFunc); hWnd: 타이머 메시지를 처리할 윈도우 nIDEvent: 타이머 일련 번호(개발자가 정의) uElapse: 타이머 메시지를 발생할 주기(1/1000초 단위) lpTimerFunc: 타이머 메시지를 수행할 함수(NULL 전달하면 hWnd의 콜백 프로시저에 WM_TIMER 메시지 발생 typedef VOID (CALLBACK* TIMERPR..
안녕하세요. 언제나휴일입니다. 이전 강의에서 마우스 입력을 알아보았어요. 이번에는 키보드 입력을 알아볼게요. Windows API 키보드 입력에 관한 주요 메시지는 WM_KEYDOWN, WM_KEYUP, WM_CHAR 입니다. 윈도우즈 운영체제에서 키보드 포커스를 소유한 윈도우는 전체 시스템에서 유일합니다. 그리고 이러한 메시지(WM_KEYDOWN, WM_KEYUP, WM_CHAR)는 포커스를 소유한 윈도우에게만 발생합니다. 메시지 이름을 보면 알 수 있듯이 WM_KEYDOWN은 키 누름, WM_KEYUP은 키 뗌입니다. WM_CHAR는 문자 키를 입력하였을 때 발생할 수 있는 메시지인데 디폴트로 발생하지는 않습니다. 메시지 루프에서 TranslateMessage를 호출하면 WM_KEYDOWN 메시지 중..
윈도우즈 프로그램에서 사용하는 기본 입력 장치에는 마우스와 키보드가 있습니다. 그리고 시스템에서 제공하는 타이머도 자주 사용하는 입력 장치입니다. Windows API에서 제공하는 마우스 관련 메시지는 크게 세 종류로 구분할 수 있어요. 클라이언트 영역에서 마우스를 누르거나 뗐을 때 발생하는 메시지, NC(Noc Client, 비 클라이언트) 영역에서 마우스를 누르거나 뗐을 때 발생하는 메시지, 그 외의 메시지(마우스 위치를 조사하기 위한 메시지나 마우스 휠 등)가 있어요. 실제 프로그래밍에서 많이 처리하는 메시지는 클라이언트 영역에서 누르거나 뗐을 때 발생하는 메시지입니다. NC 영역에서 발생한 마우스 메시지는 DefWindowsProc에 의해 디폴트 처리를 하는 것이 대부분이겠죠. Client 영역 ..
유튜브 동영상 강의 그리기 WM_PAINT - Windows API 1. DC와 그리기 절차 Windows API에서 그리기는 DC(Device Context)를 이용합니다. DC란 출력에 필요한 여러 정보를 가지고 있는 구조체로 라인이나 경계를 그릴 때 사용하는 펜, 면을 채울 때 사용하는 브러쉬 등의 정보를 갖고 있습니다. DC를 사용하지 않고 그리기를 한다고 가정하면 선을 그리기 위해 두 점의 좌표 뿐만 아니라 선의 형태, 선의 두께, 선의 색상 정보들을 인자로 전달해야 합니다. 사각형을 그리기 위해서는 좌표 뿐만 아니라 경계 선의 형태, 선의 두께, 선의 색상 정보, 면을 채울 색상, 패턴 등의 인자가 필요하겠죠. 이처럼 그리기를 위해 전달해야 하는 인자를 단순화하기 위해 Windows API에서..