MFC
-
MFC 파일MFC 2016. 5. 30. 17:06
* 파일처리- CDocument 활용- CArchivecf) cout입력대상 ex) Archive &ar;ar읽어오기 - Serialize() (CObject) // 도큐먼트의 내용을 디스크로부터 읽어오고, 저장if (ar.IsStoring()){arm_strID // 파일로부터 데이터를 읽음}CViewCDocument파일 - OnNewDocument() 함수- OnSaveDocument() 함수- OnOpenDocument() 함수 * 예제 저장 : 대화상자 -> 뷰 -> 도큐먼트 -> 파일저장읽기 : 파일읽기 -> 도큐먼트 -> 뷰
-
기말고사준비_3MFC 2016. 5. 26. 11:59
* View에서 모달대화상자 띄우기1) 헤더 파일 인클루드(대화상자클래스)2) 버튼 이벤트 핸들러 ([전체검색][항목별검색])CSearchAll m_Dlg;m_Dlg.DoModal(); * 대화상자(전체검색, 항목별검색)에서 DB접근1) View의 포인터 얻어오기- 헤더 인클루드- 프레임의 포인터 얻어오기CMainFrame * pFrame = (CMainFrame *)AfxGetMainWnd();- View의 포인터 얻어오기CDB2View * pView = (CDB2View *)pFrame->GetActiveView(); 2) View포인터 통해서 m_pSet을 이용해 DB접근pView->m_pSet->필드변수(m_name) * 전체검색 1. OnInitDailog()에 모두 코딩 * 항목별검색1. On..
-
기말고사준비_2MFC 2016. 5. 23. 16:48
PDB2 * 대화상자 클래스 정의* 컨트롤 변수선언* View 포인터 얻어오기헤더파일 Include CMainFrame * pFrame = (CMainFrame *)AfxGetMainWnd();CDB2View * pView = (CDB2View *)pFrame->GetActiveView(); DB 접근 예)pView->m_pSet->m_CID; * 검색pView->m_pSet->m_strFilter.Format(_T("name like '%%%s%%'"), m_strString); pView->m_pSet->Requery();
-
복습 및 DB연동MFC 2016. 5. 16. 16:53
*CRecordView 클래스 : 데이터베이스 연동 View를 표현하는 클래스 *CRecotrdSet 클래스 멤버함수 : 레코드셋 처리 클래스 - 커서 관련1. IsBOF() : BOF에 있는지 체크2. IsEOF() : EOF에 있는지 체크3. MoveFirst() : 커서를 첫번째 레코드로4. MoveLast() : 커서를 마지막 레코드로5. MovePrev() : 커서를 이전 레코드로6. MoveNext() : 커서를 다음 레코드로 - 데이터 조작(삽입, 삭제, 수정, 검색)1. AddNew() : 마지막 레코드 뒤에 빈 레코드 추가2. Update() : 실제 물리적인 테이블 갱신3. Edit() : 커서가 위치한 레코드를 수정(Edit)모드로 열기4. Delete() : 커서가 위치한 레코드 삭..
-
데이터베이스MFC 2016. 5. 12. 11:51
1. DB 설계(card.mdb) 2. ODBC 세팅3. GUI 구축 및 코딩 dsn(data source name) : 데이터 원본 * SDI / MDI- CRecordSet : DB 연동 및 조작- CRecordVIew : 사용자에게 보여줌 레코드셋- 데이터 조작연산을 통해 얻은 레코드 집합- 논리적인 Record 모임- asp (set rs = ~)- mfc (CRecordSet *m_pSet) * 커서- IsBoF() : 시작 체크- IsEoF() : 마지막 체크 - MoveNext() : 다음 레코드- MovePrev() : 이전 레코드- MoveFirst() : 첫번째 레코드- MoveLast() : 마지막 레코드 * Data 조작 함수- AddNew()- Edit()- Update()- Re..
-
트리 컨트롤MFC 2016. 5. 12. 10:15
TV_INSERTSTRUCT 구조체 - 트리 뷰 컨트롤에 새로운 아이템을 추가하기 위해 사용되는 정보를 포함하는 구조체hParent//상위 항목의 핸들hInsertAfter//삽입 노드의 위치item//삽입될 노드의 정보 OnInitDialog에 코딩ex)CTreeCtrl m_treeControl; TV_INSERTSTRUCT tree;tree.hParent = 0;tree.hInsertAfter = TVI_LAST;tree.item.mask = LVIF_TEXT;tree.item.pszText = _T("Root"); HTREEITEM hRoot;hRoot = m_treeControl.InsertItem(&tree); always show selectionhas buttonshas lines
-
리스트 컨트롤MFC 2016. 4. 28. 11:47
열번호 : 컬럼 인덱스(iSubItem) 행번호 : 아이템 인덱스(iItem)데이터 : 아이템텍스트(strItem) LVCOLUMN 구조체컬럼을 설정하거나 생성하기 위해 사용하는 구조체LV__COLUMN으로 사용할 수도 있다 mask- LVCF_FMT- LVCF_SUBITEM- LVCF_TEXT- LVCF_WIDTH fmt- LVCFMT_CENTER- LVCFMT_LEFT- LVCFMT_RIGHT LVITEM 구조체- InsertItem()함수 - 0번열인 경우- SetItem() 함수 - 0번열이 아닌경우 ex)if(iSubItem==0) m_lstStudent.InsertItem(&lvItem);elsem_lstStudent.SetItem(&lvItem); * CListCtrlInsertColumn(..