TXT 파일에 Log를 저장하려고 하는데, 한글이 포함된 CString이 저장이 안되서 한참을 찾았다.. 찾아보니 두가지 방법이 있는 것 같다. setlocale()을 사용하거나, 저장하려는 문서의 맨 앞에 BOM을 기록하거나. BOM 기록 방식으로 해보려고 했는데 뭘 잘못한건지 나머지 문자들마저 한자로 나와서 몇번 시도해보다가 포기! 1. setlocale() 사용 - m_file.Open(~ ) 코드 위에 setlocale(LC_ALL, "korean"); 을 추가 - Header 추가 --> #include 2. BOM 설정 - Window개발 시 유니코드 문서일 경우 아래 BOM 추가 - UTF-16 : 0xFEFF (Big Endian) / 0xFFFE (Little Endian) - UTF-8..
IP 주소를 입력하고, 받아올 수 있는 컨트롤인 IP Address Control 의 사용법에 대해 알아보겠당 1. 먼저 다이얼로그에 컨트롤을 생성하고, 컨트롤의 ID를 원하는 ID로 바꿔준다. 2. 컨트롤을 마우스 오른쪽 버튼으로 눌러 변수 추가 메뉴를 선택, CIPAddressCtrl 형 변수를 추가한다. 3. 코드 // Edit Control -> IP Address Control CString strInput; CString strIP1, strIP2, strIP3, strIP4; GetDlgItemText(IDC_INPUT_EDIT, strInput); // IP주소를 "." 을 기준으로 각각 나눠서 저장 AfxExtractSubString(strIP1, strInput, 0, '.'); Afx..
MFC에서 아래와 같이 파일이나 폴더를 선택하여 경로를 가져와야 할 때 ! 폴더 및 파일을 선택하는 다이얼로그를 띄우고싶다면, 아래와 같이 하면 된다. 1. 폴더 선택 다이얼로그 BROWSEINFO BrInfo; TCHAR szBuffer[512]; // 경로저장 버퍼 ::ZeroMemory(&BrInfo, sizeof(BROWSEINFO)); ::ZeroMemory(szBuffer, 512); BrInfo.hwndOwner = GetSafeHwnd(); BrInfo.lpszTitle = _T("파일이 저장될 폴더를 선택하세요"); BrInfo.ulFlags = BIF_NEWDIALOGSTYLE | BIF_EDITBOX | BIF_RETURNONLYFSDIRS; LPITEMIDLIST pItemIdLis..
1. Radio Button 생성 - 도구상자 - Radio Button을 이용해 아래와 같이 버튼을 생성할 수 있다. 2. Group 지정 - 위 상태에서, Group1 / Group2의 라디오 버튼을 나눠서 사용하고 싶다면 아래와 같이 설정값을 변경해주어야 한다. - 1) 먼저, Ctrl + D를 눌러, 한 그룹의 버튼 번호가 순차적으로 증가하도록 순서를 맞춰준다. (마우스를 이용해 다이얼로그 아이템을 순차적으로 클릭해주면 됨) - 2) 그 다음, 그룹화 대상의 첫 번째 버튼과 마지막 버튼의 속성을 아래와 같이 변경해준다. (처음-마지막을 제외한 버튼은 Group/Tabstop 모두 FALSE 상태인 채로 두면 됨) - 마찬가지로 Radio4, Radio6의 속성도 변경해주면, 라디오버튼을 2개의 그..
*** 현재 실행파일(.exe)의 위치를 기준으로 경로를 얻어 작업하고 싶을 때, 다음의 함수를 이용 ! 1) 정의 : DWORD WINAPI GetModuleFileName(HMODULE hModule, // 현재 실행되고 있는 모듈의 핸들, 또는 NULL(자신의 실행경로 반환)LPTSTR IpDileName, // 실행 경로를 받을 포인터DWORD nSize // 실행 경로가 들어갈 버퍼의 길이); ex) GetModuleFileName(AfxGetApp()->m_hInstance, szPath, _MAX_PATH); : szPath에 현재 실행되는 프로그램의 FullPath가 넘어옴 (ex) c://Desktop//TestPJT//Debug//TestPJT.exe) 2) 예시/* 실행 파일의 경로 ..
1. 스플래쉬 화면의 바탕이 될 비트맵 이미지 리소스(.bmp) 추가 및 ID 변경 IDB_SPLASH_BMP (리소스 명 임의 설정) 2. Cwnd을 상속받는 CSplashScreenEx 클래스 추가 및 코드 작성 (클래스 명은 임의로 설정) 코드는 아래 첨부파일 참조 3. MainFrm.cpp에 Splash 화면을 띄우는 코드를 작성 CSplashScreenEx pSplash; pSplash.Create(this, _T("CSplashScreenEX text:"), 0, CSS_FADE | CSS_CENTERSCREEN | CSS_SHADOW); pSplash.SetBitmap(IDB_SPLASH_BMP, 255, 0, 255); pSplash.SetTextFont(_T("Impact"), 100, ..
위와 같이, 리스트에서 특정 단어가 표시된 라인의 색상을 변경하고 싶을 때아래의 코드를 이용하여 리스트의 글자 색상과 배경 색상을 지정할 수 있다! 1. 헤더 파일(.h)에 추가afx_msg void OnCustomdrawList(NMHDR* pNMHDR, LRESULT* pResult); 2. MessageMap에 추가 BEGIN_MESSAGE_MAP(CTestDlg, CDialogEx) ON_NOTIFY(NM_CUSTOMDRAW, IDC_TEST_LIST, OnCustomdrawList) // 2번째 인자 : List Control ID, 3번째 인자 : 실행할 함수 END_MESSAGE_MAP() 3. 실행 함수 정의void CTestDlg::OnCustomdrawList(NMHDR* pNMHDR,..
** CTime 클래스를 이용하면 현재 시스템 시간을 알아올 수 있고, 아래와 같이 년, 월, 일, 주, 시, 분, 초 단위로 얻어올 수 있다!CTime time = CTime::GetCurrentTime(); CString text; text.Format(_T("%02d%02d%02d%d%02d%02d%02d"), time.GetYear() - 2000, time.GetMonth(), time.GetDay(), time.GetDayOfWeek() - 1, time.GetHour(), time.GetMinute(), time.GetSecond());
- Total
- Today
- Yesterday
- 브리달메이웨딩밴드
- 광명 무역센터 블랑논
- 종로결혼반지추천
- 롯데리아
- 가성비예복
- 광명 본식 dvd
- 무한리필
- 부평
- C++
- 라레토페이백
- 브리달메이결혼반지
- 종로브리달메이
- 라레토추천인
- 가성비맞춤정장
- 부평맛집
- 본식맞춤예복
- MFC
- 광명무역센터컨벤션 dvd
- 그래픽카드후기
- Visual Studio
- 광명무역센터컨벤션
- 광명무역센터컨벤션 #본식스냅 #메인스냅 #서브스냅 #촬영후기 #1인작가 #대표작가 #하루그라피
- 본식예복
- 브리달메이다이아
- 백준알고리즘
- 냉면
- 종로다이아반지추천
- 브리달메이
- 종로프로포즈링추천
- 가산디지털단지 맛집
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |