Bai Tap Winapi 3

  • June 2020
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Bai Tap Winapi 3 as PDF for free.

More details

  • Words: 904
  • Pages: 4
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM TP,HCM KHOA TOÁN – TIN HỌC http://www.hcmup.edu.vn

BÀI TẬP THỰC HÀNH LẬP TRÌNH C FOR WINDOWS 1. Phần 1: Làm quen với một chương trình Win API 1.1. Bài 01 – Chương trình minh họa đầu tiên -

Yêu cầu: Tạo ứng dụng “Win32 Application” đơn giản bằng Wizard trong visual C++ 6.0

-

Hướng dẫn gợi ý: o Khởi động Visual C++ 6.0 o Dùng chức năng New Project để tạo project mới o Chọn loại project “Win32 Application” o Chọn chức năng “A typical Hello World !” application o Hoàn tất tạo project, biên dịch và chạy thử chương trình, xem kết quả

1.2. Bài 02 – Chương trình minh họa đầu tiên (tt) - Yêu cầu: Sửa đổi chương trình trong bài 01 o Thay đổi tiêu đề của cửa sổ thành “Chương trình C/API” o Thay đổi nội dung hiển thị trên màn hình Client area thành “Day la chuong trinh minh hoa tao ung dung Windows trong visual C++ bang thu vien API Tac gia: Nguyen Van A…” - Hướng dẫn gợi ý: o Thay đổi tiêu đề của cửa sổ thành “Chương trình C/API” // Initialize global strings LoadString(hInstance, IDS_APP_TITLE, szTitle, MAX_LOADSTRING); strcpy(szTitle,"Chuong trinh C/API"); o Thay đổi nội dung hiển thị trên màn hình Client area thành GetClientRect(hWnd, &rt); strcpy(szHello,"Day la chuong trinh minh hoa tao ung dung Windows\n\r trong visual C++ bang thu vien API \n\rTac gia: Nguyen Van A"); DrawText(hdc, szHello, strlen(szHello), &rt, DT_CENTER); o Biên dịch và chạy thử chương trình, xem kết quả

Ths Trần Ngọc Bảo

1/4

Bài tập thực hành lập trình C for Windows 1.3. Bài 03 - Tài nguyên của ứng dụng -

Yêu cầu: Tạo ứng dụng tương tự bài tập 01 o Thay đổi biểu tượng (Icon) của chương trình o Thay đổi con trỏ chuột (Cursor) của chương trình o Thay đổi nội dung của hộp thoại (Dialog) “About”

-

Hướng dẫn gợi ý: o Thay đổi biểu tượng (Icon) của chương trình wcex.lpszClassName = szWindowClass; wcex.hIconSm = LoadIcon(wcex.hInstance, (LPCTSTR)IDI_SMALL); Hoặc ƒ

Thêm mới một ICON

ƒ

Sửa lệnh LoadIcon

//wcex.hIconSm

= LoadIcon(wcex.hInstance, (LPCTSTR)IDI_SMALL);

wcex.hIconSm

= LoadIcon(wcex.hInstance, (LPCTSTR)IDI_ICON1);

o Thay đổi con trỏ chuột (Cursor) của chương trình //wcex.hCursor wcex.hCursor

= LoadCursor(NULL, IDC_ARROW); = LoadCursor(NULL,IDC_WAIT);

Hoặc ƒ

Thêm mới một CURSOR

ƒ

Sửa lệnh LoadCursor

//wcex.hCursor

= LoadCursor(NULL, IDC_ARROW);

wcex.hCursor

= LoadCursor(hInstance,(LPCTSTR)IDC_CURSOR1);

o Thay đổi nội dung của hộp thoại (Dialog) “About” ƒ

Chọn Tab ResourceView

ƒ

Click vào mục dialog

ƒ

Double click “IDD_ABOUTBOX”

ƒ

Sửa nội dung “Bai03 Version 1.0” thành “Bai tap 03 phien ban 1.0”

o Biên dịch và chạy thử chương trình, xem kết quả 1.4. Bài 04 - Tài nguyên của ứng dụng (tt) -

Yêu cầu: Tạo ứng dụng tương tự bài tập 01 o Bổ sung thêm vào menu “File” các mục sau: New, Open, Save o Thêm mới 1 menu popup “Edit” với các item sau: Undo, Redo, Cut, Copy, Paste, Delete

Ths Trần Ngọc Bảo

2/4

Bài tập thực hành lập trình C for Windows o Mỗi menu item đều có phím tắt tương ứng -

Hướng dẫn gợi ý: o Chọn Tab ResourceView o Click vào mục Menu o Double click “IDC_BAI04” o Bổ sung thêm vào menu “File” các mục sau: New, Open, Save o Thêm mới 1 menu popup “Edit” với các item sau: Undo, Redo, Cut, Copy, Paste, Delete

1.5. Bài 05 - lập trình sự kiện -

Yêu cầu: Bổ sung bài tập 04 o Khi người dùng chọn menu item, hiển thị thông báo “Bạn vừa chọn chức năng xyz” o Khi thoát chương trình hiển thị thông báo hỏi “Bạn có muốn thoát khỏi chương trình không” ?

-

Hướng dẫn gợi ý: o Khi người dùng chọn menu item, hiển thị thông báo “Bạn vừa chọn chức năng xyz” Viết xử lý cho các menu item trong message WM_COMMAND trong hàm WndProc case WM_COMMAND: wmId = LOWORD(wParam); wmEvent = HIWORD(wParam); // Parse the menu selections: switch (wmId) { case IDM_ABOUT: DialogBox(hInst, (LPCTSTR)IDD_ABOUTBOX, hWnd, (DLGPROC)About); break; case IDM_OPEN: MessageBox(hWnd,"Ban dang chon chuc nang Open","Thong bao",MB_OK|MB_ICONEXCLAMATION); break; case IDM_NEW: MessageBox(hWnd,"Ban dang chon chuc nang NEW","Thong bao",MB_OK|MB_ICONEXCLAMATION); break;… }

Ths Trần Ngọc Bảo

3/4

Bài tập thực hành lập trình C for Windows o Khi thoát chương trình hiển thị dialog hỏi “Bạn có muốn thoát khỏi chương trình không” ? ƒ

Thay nội dung đoạn code xử lý “case IDM_EXIT:” trong hàm LRESULT CALLBACK WndProc /*case IDM_EXIT: DestroyWindow(hWnd); break; */ case IDM_EXIT: int nRes; nRes

=

MessageBox(hWnd,"Ban

co

muon

thoat

khong

?","Confirm",MB_OKCANCEL|MB_ICONQUESTION); if (nRes == IDOK) DestroyWindow(hWnd); break; 1.6. Bài 06 - Lập trình sự kiện (tt) -

Yêu cầu: Bổ sung bài tập 05 o Khi người dùng click chuột trái, hiển thị thông báo “Bạn vừa nhan trai chuot, toa do X=,Y=” o Khi người dùng click chuột phải, hiển thị thông báo “Bạn vừa nhan phai chuot, toa do X=,Y=”

-

Hướng dẫn gợi ý: o Khi người dùng click chuột trái, hiển thị thông báo “Bạn vừa nhan trai chuot, toa do X=,Y=” ƒ

Xử lý sự kiện WM_LBUTTONDOWN

ƒ

X = LOWORD(lParam);

ƒ

Y = HIWORD(lParam);

o Khi người dùng click chuột phải, hiển thị thông báo “Bạn vừa nhan phai chuot, toa do X=,Y=” ƒ

Xử lý sự kiện WM_RBUTTONDOWN

ƒ

X = LOWORD(lParam);

ƒ

Y = HIWORD(lParam);

Ths Trần Ngọc Bảo

4/4

Related Documents

Bai Tap Winapi 3
June 2020 7
Bai Tap Word 3
November 2019 15
Bai Tap 3
June 2020 4
Bai Tap 3
June 2020 3
Bai Tap Word 3
November 2019 27
Bai Tap
October 2019 78