본문 바로가기
반응형

C & C++444

[리본바] 리본바 만들기 기초 1. 개요 MFC 9.0 Beta 버전에 포함된 Office 2007 스타일의 Ribbon Bar를 만드는 방법을 알아본다. (Application Wizard가 자동으로 생성하는 코드에 대한 이해를 목적으로 한다.) 2. 프로젝트 생성 [그림 1 Application Type] a) [그림 1]과 같이 Project Style을 Office로 선택하고 마음에 드는 Style Thema를 선택한다. (여기서 주의할 점이 있는데 Enable visual style switching 체크를 해제하게 되면 컴파일 에러가 나게 되는데, 물론 쉽게 에러나는 곳을 고칠 수 있으나 성가신 사항이므로 일단 체크를 하자. 컴파일 에러에 관한 내용은 다음 기회에 포스팅할 예정이다.) [그림 2 User Interface .. 2011. 4. 28.
배경 이미지 연속적으로 돌리기 배경 연속적으로 돌리기 한 비트맵의 이미지로 마치 배경이 움직이는 듯한 스크롤을 구현.. 간단한 슈팅게임을 만들때 배경이 연속적으로 움직이면서 좀더 멋진 화면이 나타날수 있다... (비트맵이 좀 괜찮다면....) 그대신 스크롤 될때 좀 이어지는 비트맵이어야 이쁘게 나온다... 간단한 게임상에서는 뒤에 파란배경을 출력하고 구름 이미지를 연속적으로 돌려도 괜찮은 화면이 나온다. 배경이미지가 640 x 480 사이즈의 back.bmp 라고 한다면... LRESULT CALLBACK WndProc( HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam ) { static HDC hdc, MemDC, hBackDC; HBITMAP hbitmap, oldbitmap, hb.. 2011. 4. 28.
메시지맵(Message Map) 을 사용하지 않고 메시지 처리하는 방법 메시지맵(Message Map) 을 사용하지 않고 메시지 처리하는 방법 메서드 : CWnd::PreTranslateMessage() 원형 : virtual BOOL PreTranslateMessage(MSG* msg); TranslateMessage(&msg)와 DispatchMessagE(&msg) 윈도우 함수에서 처리되기전에 윈도우의 메시지를 필터링하기위해서 사용된다. 즉 메시지맵을 거치기 전에 중간에서 메시지를 처리할수 있다. ex) WM_LBUTTONDOWN메시지를 처리하는 예제 BOOL testView::PreTranslateMessage(MSG* msg) { if(WM_LBUTTONDOWN) { MessageBox("aaaa", "bbbbb"); } return TRUE; } 2011. 4. 28.
[Dialog] 모드형 대화상자와 비 보드형 대화상자 1. 모드형 대화상자와 비 모드형 대화상자는? 모드형 대화상자 : 모드형(Modal)의 의미는 현재 대화상자(Dialog-Mode)이므로 반드시 사용자 대화상자를 통해 입력을 하거나 취소를 함으로써 대화를 마쳐야만 다음으로진행할 수 있다는 뜻이다. 모드형 대화상자는 개념도 쉽고 실제 코딩 방법도 비 모드형 대화상자에 비해 간단하므로 많이 사용된다. 비 모드형 대화상자 : 모드형 대화상자와는 반대로 대화상자를 마치지 않고도 다음으로 진행할수 있는 대화상자를 말한다. 2. 작성 순서 1) 모드형 대화상자 대화상자 리소스를 작성한다. CDialog 클래스 또는 CDialog의 파생 클래스 객체를 만든다. 이 때 대화상자 리소스 ID를 생성자의 인자로 넘겨 준다. CDialog::DoModal() 함수를 호출한.. 2011. 4. 28.
인터넷 바로가기 만들기 #include #include #include #include void writeTextFile(std::string strFileName, std::string& strFileData, bool bApp = false) throw(std::string) { std::ofstream fout; if(!bApp) fout.open(strFileName.c_str()); else fout.open(strFileName.c_str(), std::ios::app); if(!fout.is_open()) throw "In writing " + strFileName + " of WriteTextSTR"; fout.write(strFileData.data(), strFileData.size()); fout.close.. 2011. 4. 27.
[Tip] UpDate 체크 프로그램 웹페이지를 통한 업데이트 시스템을 구축하도록 하고, 간단하게 업데이트 정도를 체크하고, 업데이트 여부를 물어보는 정도로 구현하겠습니다. 먼저 간단하게 다이얼로그 기반으로 프로젝트를 만듭니다. 새폴더로 "UpdateChecker"라는 폴더를 만듭니다. 업데이트를 체크하거나, 처리하는 기능은 이제 이 폴더에서 작업하기로 합니다. 현재 필요한 기능은 다음과 같습니다. 1. 내 프로그램의 파일버전 정보를 알아야 한다 2. 인터넷에 연결하고, 웹페이지를 다운받는다. 3. 웹페이지에서 버전 정보를 가져올수 있어야 한다. 4. 내 파일버전과, 웹페이지상의 버전 정보를 비교하여 다운로드 여부를 처리한다. 위의 기능들이 필요함으로, 새로 작성할까 하다가 인터넷을 검색해서 사용하기로 했습니다. 독일의 Alexander B.. 2011. 4. 27.
반응형