본문 바로가기

김탱 개발자/MFC

(12)
MFC 새 다이얼로그 창 열기 보통 MFC에서 이제 view에 사용할 소스 파일의 h와 cpp가 있을 때이제 해당 뷰에서 사용할 컨트롤 및 클래스들을 사용할 때에 include를 cpp 파일에다가 한다.헤더 파일에 인클루드 했다가는 무진장 꼬여서 애먹는다 -.-;;차라리 사용할 클래스들을 그때 그때 cpp에 include하는게 편하다. 그렇다면 멤버 변수로 외부 클래스를 선언 할려면 어떻게 해야하는가class의 헤더에 외부 클래스의 h가 include 되어 있지 않기 때문에 그냥 선언해선 되지 않을 것이다 예를 들어 내가 class CMain에서 사용하고 싶은 클래스가 CExample 이라고 해보자. //Main.hclass CMain{public: CExample m_example;}; //Main.cpp#include "Examp..
[퍼옴] MFC에서 사용되는 문자열(멀티바이트/유니코드)에 대한 고찰 Visual Studio 6.0 에서는 유니코드 환경을 제대로 지원해주지 않는다. 보통 학교에서는 6.0을 사용하기에 유니코드에 대해 잘 모르다 2008을 사용하는데 유니코드라 라이브러리 사용이란 체크 박스가 있어 이게 무엇을 하는 물건이고 .. 찾아보았다출처 : http://blog.naver.com/niemiskai/100156605903// 이하 내용 언젠가 한번 정리 해볼까 했는데 질문글에 답변하려다 보니 꽤나 장문이 되어버렸네요..덕분에 포스트 하나 늘려봅니다..ㅎㅎ 일단 MFC에서 문자열이란것이 멀티바이트와 유니코드로 되어있죠... 멀티바이트는 영문자 1글자에 1바이트를 사용합니다. 유니코드는 영문자 1글자에 2바이트를 사용합니다.. 결국 메모리를 어떻게 사용하냐는 결론에 도달하게 되는데요....
[퍼옴] AfxbeginThread 사용과 해제 출처 : http://blog.naver.com/hwa2ting3612/150103324837아래 소스를 직접 작성해보았다 (VS2008) 첨부 // 이하 내용MFC로 쓰레드를 사용하기 위해 간단 예제 파일을 만들어 보았다.위에는 쓰레드시작 버튼을 누르면 EDITBOX1 과 EDITBOX2를 차례대로 1부터 10까지 출력하는 예제이다소스는 다음과 같다. UINT CAfxbeginThreadTestDlg::ThreadStart1(LPVOID pParam){ CAfxbeginThreadTestDlg *aa = (CAfxbeginThreadTestDlg*)pParam; while(1) { (aa->a)++; aa->plus.Format(L"%d\r\n",aa->a); aa->add.Append(aa->plus..
List Box 내용 추가 시 자동으로 스크롤 내려가게 하기 기본적으로 리스트박스에 내용이 계속 추가되어 스크롤이 생길경우 스크롤만 생기고 내용은 아래로 보이지 않게된다.AddString으로 스트링을 출력하고 난 후에SetCurSel() 멤버함수를 이용하여 추가된 내용으로 바로 갈 수 있게끔 한다. Ex)m_list.AddString(m_str);m_list.SetCurSel(m_list.GetCount()-1);