Giáo trình Visual C++ 6.0 - Nguyễn Viết Nam
1. Cài đặt (Setup) . 1
1.1. Visual C++ 6.0 . 1
2. Cửa sổ làm việc (Window) . 1
2.1. Khởi động-Open,Thoát-Exit . 1
2.2. Giao diện (Interface) . 1
3. Dự án (Project) - DPW . 2
* Cập nhật ứng dụng: . 5
* Đóng ứng dụng: . 5
. 5
4. Giao diện (Interface) . 5
4.1. Trình đơn-Menu (CWnd,CMenu) . 5
4.2. Cửa sổ-Dialog~Lớp-Class . 11
4.2.1. Modal (CDialog) . 11
4.2.2. Modeless (CDialog) . 13
4.3. Nút-Button (CButton,CWnd) . 16
4.4. Nhãn-Static Text (CString,CStatic) . 19
4.5. Hộp nhập liệu-Edit Text (CEdit) . 22
4.6. Khung nhóm-Group Box . 24
4.7. Hộp lựa chọn-Radio Box (CButton) . 25
4.8. Hộp đánh dấu-Check Box (CButton) . 28
4.9. Hộp danh sách-List Box (CListBox) . 31
4.10. Hộp danh sách thả xuống-Combo Box (CComboBox) . 35
4.11. Hộp ngày giờ-Date Time Picker (COleDateTime, CTime) . 39
4.12. Hộp ngày tháng-Month Calendar Control (COleDateTime, CTime) . 42
4.13. Thời gian-Timer (COleDateTime, CTime) . 42
4.14. Thanh tiến trình-Progress (CProgressCtrl) . 43
4.15. Thanh cuộn-Scroll Bar (CScrollBar) . 46
4.16. Thanh trượt-Slider (CSliderCtrl) . 46
4.17. Hộp tăng giảm giá trị-Spin () . 49
4.18. Cây-Tree Control (CTreeCtrl) . 49
4.19. Thẻ-Tab Control (CTreeCtrl) . 52
4.20. Danh sách-List Control (CListCtrl) . 52
4.21. Picture . 56
4.22. Images, Bitmaps và Icons . 56
4.23. Hoạt hình-Animate . 56
4.24. Hộp địa chỉ mạng-IP Address . 57
4.25. Hộp thông báo-Message Box (Lớp CWnd) . 57
5. Giải thuật (Algorithm) . 57
5.1. Thoát-Exit . 57
5.2. GetDlgItem . 57
5.3. ShowWindow . 58
5.4. UpdateData . 58
oc = GetDocument(); if (nFlags & MK_LBUTTON) { pDoc->mCur = point; Invalidate(); //Thuc hien phuong thuc OnDraw GV: Nguyễn Viết Nam59 }Phương thức OnDraw của lớp View CDiem* pDiem; //CPen* pPen; //Ve cac diem truoc do den diem hien tai for(int i=0; imDS.GetSize(); i++) { //mPen.DeleteObject(); pDiem = (CDiem*)pDoc->mDS.GetAt(i); //mPen.CreatePen(PS_SOLID, 1, pDiem->color); //if(i==0) //pPen = pDC->SelectObject(&mPen); //else //pDC->SelectObject(&mPen); DrawShape(pDC, pDiem->type, pDiem->m1, pDiem->m2); } DrawShape(pDC, pDoc->type, pDoc->m1, pDoc->m2); Hàm DrawShape Lớp View.cpp - Nhập dòng #include "Diem.h". - Chọn thẻ > Click chuột phải lên lớp View > Chọn Add Member Function. - Sau đó xuất hiện hộp thoại Add Member Function như hình sau: o Nhập kiểu dữ liệu trả về là void ở hộp . o Nhập tên hàm là DrawShape ở hộp . - Nhập đối số cho hàm như sau: DrawShape(CDC* pDC, int mShape, CPoint m1, CPoint m2) - Kế đó nhập nội dung hàm như sau: void CVeHinhView::DrawShape(CDC* pDC, int mShape, CPoint m1, CPoint m2) switch(mShape) { case 1: pDC->MoveTo(m1); pDC->LineTo(m2); break; case 2: pDC->Rectangle(m1.x, m1.y, m2.x, m2.y); break; case 3: pDC->Ellipse(m1.x, m1.y, m2.x, m2.y); break; } } Lớp View.h - Thêm đối số cho hàm DrawShape như sau: // Implementation public: void DrawShape(CDC* ,int ,CPoint ,CPoint ); Sự kiện WM_LButtonUp GV: Nguyễn Viết Nam60 của lớp View CVehinhDoc* pDoc = GetDocument(); CDiem* pDiem = new CDiem(); pDiem->m1 = pDoc->mOld; pDiem->m2 = pDoc->mCur; pDiem->mShape = pDoc->mShape; pDiem->mColor = pDoc->mColor; pDoc->mDS.Add(pDiem); } - MFC: CVeHinhView > CVeHinhView > WM_LButtonDown - MFC: CVeHinhView > CVeHinhView > WM_LButtonUp - MFC: CVeHinhView > CVeHinhView > WM_MouseMove - MFC: CVeHinhView > ID_LUACHON_DUONGTHANG > COMMAND void CVehinhView::OnLuachonDuongthang() { // TODO: Add your command handler code here CVehinhDoc* pDoc = GetDocument(); pDoc->type = 1; //line; } - MFC: CVeHinhView > ID_LUACHON_DUONGTHANG > UPDATE_COMMAND_UI: void CVehinhView::OnUpdateLuachonDuongthang(CCmdUI* pCmdUI) { // TODO: Add your command update UI handler code here CVehinhDoc* pDoc = GetDocument(); if(pDoc->type==1) pCmdUI->SetCheck(1); else pCmdUI->SetCheck(0); } Thiết kế Điều khiển-Control Design Vẽ-Draw 1) Resource View > Menu > IDR_MAINFRAME ID_LUACHON_DUONGTHANG ID_LUACHON_HINHCHUNHAT ID_LUACHON_ELIP Thuộc tính-Properties Viết mã-Coding Khai báo Biến-Variable Declaration Chèn Thông điệp- Add Message GV: Nguyễn Viết Nam61 1. Cài đặt (Setup) .....................................................................................................................................................1 1.1. Visual C++ 6.0 .............................................................................................................................................1 2. Cửa sổ làm việc (Window) ..................................................................................................................................1 2.1. Khởi động-Open,Thoát-Exit .........................................................................................................................1 2.2. Giao diện (Interface) .....................................................................................................................................1 3. Dự án (Project) - DPW ........................................................................................................................................2 * Cập nhật ứng dụng: .............................................................................................................................................5 ................................................................................................................................................................................5 ..........................................................................................................................................................................5 ...............................................................................................................................................................................5 ...............................................................................................................................................................................5 * Đóng ứng dụng: ...................................................................................................................................................5 ...............................................................................................................................................................................5 4. Giao diện (Interface) ............................................................................................................................................5 4.1. Trình đơn-Menu (CWnd,CMenu) ................................................................................................................5 4.2. Cửa sổ-Dialog~Lớp-Class ..........................................................................................................................11 4.2.1. Modal (CDialog) .................................................................................................................................11 4.2.2. Modeless (CDialog) ............................................................................................................................13 4.3. Nút-Button (CButton,CWnd) .....................................................................................................................16 4.4. Nhãn-Static Text (CString,CStatic) ............................................................................................................19 4.5. Hộp nhập liệu-Edit Text (CEdit) ................................................................................................................22 4.6. Khung nhóm-Group Box ............................................................................................................................24 4.7. Hộp lựa chọn-Radio Box (CButton) ...........................................................................................................25 4.8. Hộp đánh dấu-Check Box (CButton) .........................................................................................................28 4.9. Hộp danh sách-List Box (CListBox) ..........................................................................................................31 4.10. Hộp danh sách thả xuống-Combo Box (CComboBox) ............................................................................35 4.11. Hộp ngày giờ-Date Time Picker (COleDateTime, CTime) .....................................................................39 4.12. Hộp ngày tháng-Month Calendar Control (COleDateTime, CTime) .......................................................42 4.13. Thời gian-Timer (COleDateTime, CTime) ..............................................................................................42 4.14. Thanh tiến trình-Progress (CProgressCtrl) ...............................................................................................43 4.15. Thanh cuộn-Scroll Bar (CScrollBar) ........................................................................................................46 4.16. Thanh trượt-Slider (CSliderCtrl) ..............................................................................................................46 4.17. Hộp tăng giảm giá trị-Spin () ...................................................................................................................49 4.18. Cây-Tree Control (CTreeCtrl) ..................................................................................................................49 4.19. Thẻ-Tab Control (CTreeCtrl) ...................................................................................................................52 4.20. Danh sách-List Control (CListCtrl) ..........................................................................................................52 4.21. Picture .......................................................................................................................................................56 4.22. Images, Bitmaps và Icons .........................................................................................................................56 4.23. Hoạt hình-Animate ...................................................................................................................................56 4.24. Hộp địa chỉ mạng-IP Address ..................................................................................................................57 4.25. Hộp thông báo-Message Box (Lớp CWnd) ..............................................................................................57 5. Giải thuật (Algorithm) .......................................................................................................................................57 5.1. Thoát-Exit ...................................................................................................................................................57 5.2. GetDlgItem .................................................................................................................................................57 5.3. ShowWindow .............................................................................................................................................58 5.4. UpdateData .................................................................................................................................................58 GV: Nguyễn Viết Nam62
File đính kèm:
- Giáo trình Visual C++ 6.0 - Nguyễn Viết Nam.pdf