본문 바로가기

프로그래밍38

[MFC] Static Text Control (문자&배경색) 링크 : http://blog.naver.com/halflove?Redirect=Log&logNo=40087432232 WM_CTLCOLOR 메세지는 자식컨트롤을 그리려고 할 때 호출되는 윈도우메세지 입니다. 그래서 부모 클래스에서 WM_CTLCOLOR 메세지 발생 할 경우 자식컨트롤 중 Button, DialogBox, Edit, ListBox, MessageBox, ScrollBar, Static Control에 대해서 배경 및 글자색 등을 제어 할 수 있습니다. 그러면 이 글의 본론인 Static Text 컨트롤의 배경색이나 글씨색을 바꿔봅시다. 먼저 리소스 뷰 탭에서 dialog를 띄운 후 메세지 탭에서 WM_CTLCOLOR 메세지에 대한 함수를 추가 합니다. 글로 설명이 부족하신 분은 아래의 붉.. 2011. 1. 4.
Qt 설치 - Visual Studio 2008 Plugin Visual Studio를 이용해서 Qt를 사용해보겠다고 이리저리 자료를 찾아 헤매봤습니다. 물론 Assistant와 Wiki 사이트가 있지만, 전부 영어네요.. (이놈의 영어 울렁증... 그래서 조만간 영어 공부좀...) 'xylosper'님의 블로그 글들이 괜찮은 것 같아서 많은 자료를 스크랩 해 올 생각입니다. 하지만 xylosper님은 리눅스에서 하셔서 윈도우에서 하는 방법을 다시 찾아보니 '초밥연구실' 이라는 웹사이트에 QT with Visual Studio 2008 라는 제목으로 설명을 해놓았더군요. Visual Studio 2008에 Qt를 Add-in 설치 1. Qt(http://qt.nokia.com/downloads)에 접속한다. 2. Qt libraries 4.7.1 for Windo.. 2010. 12. 28.
[스크랩] Qt 설치 아래 내용은 링크의 내용입니다. 더 많은 자료가 있으니 필요하신 분은 들어가서 보세요. 링크 : http://xylosper.net/107?category=13 Qt를 쓸려는데, Qt가 깔려있지 않으면 말이 안되겠죠? 0. Qt 소개에도 적었듯이, Qt는 QPL을 적용한 상용에디션과, GPL을 적용한 오픈소스에디션이 있습니다. 앞으로 딱히 말이 없으면 GPL을 따르는 오픈소스에디션의 Qt를 가리킵니다. 우선, Qt는 크로스플랫폼 라이브러리이기때문에, 사용하려는 운영체제에 맞는 것을 다운 받아야합니다. 각각의 운영체제별 Qt는 다음 페이지에서 다운받을수 있습니다(주소가 변경될 경우 링크가 깨질 수 있습니다.) Qt/Windows Opensource Edition Qt/Mac Opensource Editio.. 2010. 12. 28.
[스크랩] Qt 소개 아래 내용은 링크의 내용입니다. 더 많은 자료가 있으니 필요하신 분은 들어가서 보세요. 링크 : http://xylosper.net/106?category=13 블로그에 좀 알찬 내용이 없는 듯하여 Qt를 소개하는 글을 좀 적어볼려고 합니다. 사실 Qt 강좌 라는 이름으로 시작할까도 생각해봤지만, 저도 잘 모르고 강좌라고 시작해놓고 제대로 마무리도 못하면 하느니 못하단 생각에 그냥 'Qt에 대하여'라는 제목으로 글 몇개 쓸려고 합니다. 그럼 시작합니다. 0. Qt 소개 직업으로 프로그래밍 하시는 분들이 아닌, 그냥 공부하는 학생이나 취미로 프로그래밍하는 분들에게는 아마 Qt라는 이름조차도 생소한 분들이 많을 것이라고 생각합니다. 구글에서 Qt로 검색해보면 나오는 것들은 크게 세가지가 있습니다. 1. Qu.. 2010. 12. 28.
더블버퍼링, 트리플버퍼링 (CPaint, CDC 클래스) 발췌 : 열혈강의 Visual C++ 2008 MFC 윈도우 프로그래밍 p608 윈도우의 깜빡임을 제거하는 최선의 방법은 더블 버퍼링(Double Buffering)입니다. DC에 직접 출력하는 것이 아니라, 화면 DC와 호환되는 메모리 DC(버퍼DC)를 만들어서 모든 그리기 작업을 수행한 후 , 메모리 DC의 내용을 화면 DC로 복사하는 기법입니다. 아래 코드는 트리플버퍼링을 사용하였고, 배경의 색을 설정하고 있다. memSuiteDC는 실제 화면인 DC에 그려질 메모리DC이다. memDC는 memSuiteDC에 그려질 메모리DC이다. CBufferingDlg::CBufferingDlg() { m_pBitmap = new CBitmap(); m_pBitmap->LoadBitmap(IDB_BITMAP1).. 2010. 12. 24.
매크로 #, ##, #@ ## 연산자 ## 연산자를 사용해서 토큰을 합성해서 만들어 낼 수 있다. ##은 합치기 연산자 이다. ex) #define MACRO_APPEND(str1, str2) printf("%s\n", str1##str2) # 연산자 # 연산자는 전달된 인자를 문자열로 변환시킨다. ex) #define MACRO_STRING(str) printf("%s\n", #str); #@ 연산자 #@ 연산자는 전달된 인자를 문자로 변환시킨다. 미리 정의된 매크로 __STDC__ : 컴파일러가 ANSI C 표준을 따를 경우 1로 정의되며 그렇지 않을 경우 정의되지 않는다. C++로 컴파일할 때는 이 매크로가 없다. __FILE__ : 현재 소스 파일의 완전 경로이다. __LINE__ : 파일명 __DATE.. 2010. 12. 21.