본문 바로가기
반응형

C & C++444

다이얼로그 자석 효과 다이얼로그의 클래스 위자드에서 OnWindowPosChanging 함수를 추가합니다. 그 다음 아래와 같이 코드를 작성합니다. void 다이얼로그명::OnWindowPosChanging(WINDOWPOS FAR* lpwndpos) { CDialog::OnWindowPosChanging(lpwndpos); CRect rect; GetWindowRect ( &rect); int cx = GetSystemMetrics(SM_CXSCREEN); int cy = GetSystemMetrics(SM_CYSCREEN); // 바탕화면의 경계에서의 자석효과 if ((lpwndpos->x > 0) && (lpwndpos->x x = 0; if ((lpwndpos->y > 0) && (lpwndpos->y y = 0; i.. 2011. 12. 14.
ini 파일 저장 및 읽기 // INI 파일 쓰기 WritePrivateProfileString(_T("SECTION1"), _T("KEY"), _T("TEST"), _T("./test.ini")); // INI 파일 읽기 TCHAR value[10] = {0,}; DWORD length = 10; GetPrivateProfileString(_T("SECTION1"), _T("KEY"), _T(""), value, length, _T("./test.ini"));_tprintf(_T("%s\n"), value); //ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 1. INI파일 응용 프로그램이 실행될 때 필요한 초기화 정보를 담고있는 파일(INItialization file). 16bit 윈.. 2011. 12. 14.
시스템 볼륨 음소거 * 먼저 소스코드를 작성하기 전에 아래와 같은 순서로 하시면 됩니다. [1] #include 부분에서 mmsystem.h 를 선언합니다. 그리고 프로젝트(Project) -> 세팅(Setting) -> 링크(Link)에서 Object/library modules: 이부분에 winmm.lib를 추가(작성)해줍니다. * 또 다른 방법으로는 #include 부분에서 mmsystem.h 를 선언한 후 프로젝트(Project) -> 추가(Add To Project) -> 컴포넌트 & 콘트롤(Componemts and Control) -> Visual C++ Components -> Windows Multimedia library 를 선택하셔도 됩니다. [2] 다이얼로그 protected 부분에서 virtual v.. 2011. 12. 14.
팝업(Popup) 메뉴 생성 - 팝업 //ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 리스트에서 팝업 void CMyListCtrl::OnRButtonDown(UINT nFlags, CPoint point) { CMenu menu; // 물론 IDR_POPUP이란 메뉴가 리소스 편집기로 // 작성되 있어야 합니다. VERIFY(menu.LoadMenu(IDR_POPUP)); // 첫 번째 서브메뉴를 CMenu* pPopup = menu.GetSubMenu(0); ASSERT(pPopup != NULL); CRect viewRect; GetWindowRect(&viewRect); // 화면에 출력합니다. pPopup->TrackPopupMenu( TPM_LEFTALIGN | TPM_RIGHTBUTTON, point.. 2011. 12. 14.
List 정렬하기 - 리스트 2011. 12. 14.
타이머 및 진행 시간 표시 // 변수선언 int m_nSecond; int m_nMinute; int m_nHour; // 변수초기화 m_nSecond = 1; m_nMinute = 0; m_nHour = 0; // 사용법 : SetTimer로 타이머 호출 void 다이얼로그명::OnTimer(UINT nIDEvent) { if( nIDEvent == 1 ) { if(m_nSecond == 60) { m_nSecond = 0; m_nMinute++; } if(m_nMinute == 60) { m_nMinute = 0; m_nHour++; } m_strScanTime.Format("%02d:%02d:%02d", m_nHour , m_nMinute, m_nSecond++ ); CDialog::OnTimer(nIDEvent); } 2011. 12. 14.
반응형