MFC splitterwnd 관련 질문입니다.
글쓴이: jaykee33 / 작성시간: 월, 2017/01/02 - 11:48오후
SDI 환경에서 메인프레임에 OnCreateClient 부분에서
CRect rect; GetClientRect(&rect); if (!m_wndSplitter.CreateStatic(this, 1, 2)) return FALSE; if (!m_wndSplitter.CreateView(0, 0, RUNTIME_CLASS(FileList), CSize((int)(LEFTVIEW_SZ*rect.Width()), rect.Height()), pContext)) { m_wndSplitter.DestroyWindow(); return FALSE; } if (!m_wndSplitter.CreateView(0, 1, RUNTIME_CLASS(MyEditView), CSize((int)((1 - LEFTVIEW_SZ)*rect.Width()), rect.Height()), pContext)) { m_wndSplitter.DestroyWindow(); return FALSE; } m_pLeftView = (FileList*)m_wndSplitter.GetPane(0, 0); m_pRightView = (MyEditView*)m_wndSplitter.GetPane(0, 1); CListCtrl &list = m_pLeftView->GetListCtrl(); list.SetExtendedStyle(list.GetExtendedStyle() | LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT); return TRUE;
이런식으로 구성을 했습니다.
궁금한점이
CreateView 를 하면 새로운 뷰를 생성하는건가요?
기존에 기본으로 만들어주는 뷰를 붙일수는 없는지 궁금합니다.
FileList 는 리스트뷰이고
MyEditView 는 에디트뷰 입니다.
Forums:
참고해보세요. 되는거 찾아서. 따라하시면 됩니다.
제가 알기로. SplitterWnd는 생성과 입력 순서를 잘 정해서. 지키셔야 합니다.
Docking Windows도 함께. 도움이 될 수 있습니다.
View의 사용이 곤란한 상황이라면. ActiveX OCX 혹은 다이어로그 박스.등으로 사용하셔도 좋습니다.
1. MFC와 Visual C++ 책 예제를 봅니다. (원하시는 내용에 예제가 있을겁니다.)
2. 잘 만들어진 예제를 참고해 봅니다. MFC로 프로젝트를 생성하시면. 자동으로 소스가 생성됩니다.
3. MSDN과 코드프로젝트. 데브피아를 참고해 봅니다.
4. 각 함수에 대한 자세한 설명이 있습니다. - 인자값. 오류값. 리턴값을 확인해보시기 바랍니다.
5. 데브피아 자료실. 강의. 질문 답변. 그밖에 XAML. HTML5. MFC Feature Pack과 Ribbon과 Platform SDK. Qt SDK 등.도 참고해보세요.
http://www.devpia.com/MAEUL/Contents/List.aspx?boardID=51&MAEULNo=20
MFC Feature Pack
https://www.google.co.kr/?gfe_rd=cr&ei=WPxqWPunKYTR8gfK6aywCw&gws_rd=ssl#q=MFC+Feature+Pack
CSplitterWnd::CreateStatic
https://msdn.microsoft.com/ko-kr/library/87z44b55.aspx
[MFC]분할 윈도우를 생성하는 방법
http://ospace.tistory.com/13
CSplitterWnd::CreateView - 정적 분할 창에 있는 틀을 만듭니다.
https://msdn.microsoft.com/ko-kr/library/ha4x4wc7.aspx
CFrameWnd::CreateView
https://msdn.microsoft.com/ko-kr/library/9ceht78h.aspx
CSplitterWnd Class
https://msdn.microsoft.com/en-us/library/5xttbe5t.aspx
CFrameWnd::CreateView
https://msdn.microsoft.com/en-us/library/aa271040(v=vs.60).aspx
FrameworkViewSource.CreateView Method
https://msdn.microsoft.com/ko-kr/windows.ui.xaml.frameworkviewsource.createview
CreateView
https://www.codeproject.com/search.aspx?q=CreateView+&sbo=kw&x=0&y=0
splitterwnd
https://www.codeproject.com/search.aspx?q=splitterwnd+&doctypeid=1%3b2%3b3%3b13%3b14
----------------------------------------------------------------------------
젊음'은 모든것을 가능하게 만든다.
매일 1억명이 사용하는 프로그램을 함께 만들어보고 싶습니다.
정규 근로 시간을 지키는. 야근 없는 회사와 거래합니다.
각 분야별. 좋은 책'이나 사이트' 블로그' 링크 소개 받습니다. shintx@naver.com
댓글 달기