intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Lập trình Windows - Phạm Ngọc Hưng (ĐH Bách Khoa)

Chia sẻ: Ngocnga Ngocnga | Ngày: | Loại File: PDF | Số trang:312

225
lượt xem
53
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng Lập trình Windows gồm có 4 chương, trình bày một số nội dung chủ yếu như: Tổng quan về lập trình Windows, lập trình Windows VC++/MFC, một số chủ đề nâng cao (DLL, Thread, Windows Socket), xây dựng ứng dụng Windows Form. Ngoài ra bài giảng còn có một số bài tập lớn, mời các bạn cùng tham khảo để nắm bắt các nội dung chi tiết.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Lập trình Windows - Phạm Ngọc Hưng (ĐH Bách Khoa)

  1. 9/13/2011 ክኧ 0ኈ
  2.  ኞ   ኤ
  3. 
  4. ኛW  ኛ W 
  5. ኘ W ϯ@ WINDOWS Š኶ ‰ዌ… ዛ‰ ዒ môn ዣ –Š—ኼ– Máy tính hungpn@soict.hut.edu.vn 1
  6. 9/13/2011 Н’ trình Windows ‡ M㠕ዎ: IT4781 ‡ Šዕ‹ Žዛዘ‰: 2 (2-1-0-4) ± Lý –Š—›ዅ–: 30 –‹ዅ– ± Bài –ኼ’: 15 –‹ዅ– ‡ ዌ… ’Šኹ tiên “—›ዅ–: ± Ngôn ‰ዟ Žኼ’ trình C, C++ ± ኼ’–”¿ŠŠዛዔ‰¯ዎ‹–ዛዘ‰ ኼ’–”¿Š‹†‘™• 2 2
  7. 9/13/2011 г‹ dung ‡ Šዛዓ‰ 1. ዐ‰ quan Žኼ’ trình Windows (4LT + 1BT) ‡ Šዛዓ‰ 2. ኼ’ trình Windows VC++/MFC (15LT + 6BT) ‡ Šዛዓ‰͵Ǥዒ– •ዎ …Šዚ ¯዆ nâng cao ± ኶‘ –Šዛ ˜‹ዉ liên ዅ– ¯ዒ‰ (DLL) (3LT + 2BT) ± —ዏ‰ (Thread) (3LT + 2BT) ± Windows Socket (2LT + 2BT) ‡ Šዛዓ‰4. Ÿ›†ዠ‰ዜ‰†ዙ‰‹†‘™• ‘”ȋ͵ + 2BT) ‡ Bài –ኼ’ Žዔ ኼ’–”¿Š‹†‘™• 3 3
  8. 9/13/2011 Tài Ž‹Ъ— tham ŠИ‘ ‡ 1. Ivor ‘”–‘ǯ•ǡ‡‰‹‹‰‹•—ƒŽΪΪʹͲͳͲ ‡ 2. Programming Windows with MFC 2nd ‡ 2. VC++ and MFC Programming 2nd ‡ 3. Sams teach yourself VC++ 6 in 21 days ‡ 4. MSDN ‡ 5. http://www.functionx.com/visualc/ ኼ’–”¿Š‹†‘™• 4 4
  9. 9/13/2011 Šмд‰ 1. б‰ quan ŽН’ trình Windows ‡ 1.1. ዓ „኷ ˜዆ Žኼ’ trình Windows (1T) ‡ 1.2. ኸ— trúc …ዚƒ …Šዛዓ‰ trình Windows (2T) ‡ 1.3. Microsoft Foundation Classes (MFC) ‡ 1.4. ኼ’ trình Windows ˜ዔ‹ VC++ 2008 (1LT + 1BT) ኼ’–”¿Š‹†‘™• 5 5
  10. 9/13/2011 1.1. д „И ˜Ч ŽН’ trình Windows ‡ Windows: ¯ዏ Šዌƒ –”ዠ… quan, tài nguyên ¯ƒ †኶‰. ‡ ኮ‰ †ዙ‰ thân –Š‹ዉ ˜ዔ‹ ‰ዛዕ‹ •ዞ †ዙ‰ thông qua giao †‹ዉ ¯ዏ Šዌƒ Windows. ‡ Các ዜ‰ †ዙ‰ có giao †‹ዉ –ዛዓ‰ tác ‰‹ዎ‰ nhau: ± Windows, title bar, toolbar, menu bar, status bar ± Thanh –Šዠ… ¯ዓ: File, Edit, Tool, Helpǥ ± ዒ’ –Š‘኶‹: –Šዛዕ‰ …Šዜƒ các ¯‹዆— Š‹዇ chung: Edit Control, Button Control, CheckboxǥǤ ኼ’–”¿Š‹†‘™• 6 6
  11. 9/13/2011 Các thành ’ŠК …лƒ г– …пƒ •б ኼ’–”¿Š‹†‘™• 7 7
  12. 9/13/2011 д…ŠЦŽН’–”¿Š˜‡–-driven ኼ’–”¿Š‹†‘™• 8 8
  13. 9/13/2011 ŠØ‰¯‹Ъ’ȋ‹†‘™•‡••ƒ‰‡•Ȍ ‡ ዉ –Šዎ‰ (Windows) ghi Ž኶‹ ዑ‹ •ዠ ‹ዉ š኷› ra (event) trong ዒ– thông ¯‹ዉ’ (message) và ¯዁– trong hàng ¯ዘ‹ thông ¯‹ዉ’ (messages queue) ‡ Thông ¯‹ዉ’ phát sinh: ± ዝ Šዉ –Šዎ‰ (Windows OS) ± ዝ ዜ‰ †ዙ‰ ‡ Ví †ዙ: click/drag …Š—ዒ–, ኸ phím, minimize/maximize/close …ዞƒ •ዐ, thay ¯ዐ‹ kích –Šዛዔ… …ዞƒ •ዐǡǥ ኼ’–”¿Š‹†‘™• 9 9
  14. 9/13/2011 Windows Message (cont.) ‡ 0 ‹†‘™•¯኷Š‹ዉ ˜‹ዉ… –”—›዆ –ኸ– …኷ các –ŠØ‰¯‹ዉ’…ዚƒ ዜ‰ †ዙ‰ vào các …ዞƒ •ዐ khác nhau …ዚƒ ዜ‰ †ዙ‰ ¯×. ‡ ዒ– …Šዛዓ‰ trình Windows ’Š኷‹ …Šዜƒ ዒ– hàm ¯዁… „‹ዉ– ¯዇ šዞ lý các thông ¯‹ዉ’ ‰ዌ‹ là hàm šዞ lý …ዞƒ •ዐ WinProc (Š‘዁… WindowProc): ± 0ዛዘ… ‰ዌ‹ khi có „ኸ– ü thông ¯‹ዉ’ ¯ዛዘ… –”—›዆ ¯ዅ …ዞƒ •ዐ (thông qua con –”ው hàm) ± ዞ lý các thông ¯‹ዉ’ ¯× và –”኷ ¯‹዆— Š‹዇ ˜዆ cho Šዉ –Šዎ‰. ‡ Š‹዆— thông ¯‹ዉ’ –”኷ Ž኶‹ cho Windows šዞ lý, ‰ዌ‹ hàm DefWindowProc( ) ኼ’–”¿Š‹†‘™• 10 10
  15. 9/13/2011 Windows Message (cont.) ኼ’–”¿Š‹†‘™• 11 11
  16. 9/13/2011 Windows API ‡ Application Programming Interface: Giao †‹ዉ Žኼ’ trình ዜ‰ †ዙ‰ ‡ Cung …ኸ’ các hàm truy …ኼ’ tài nguyên trong Šዉ –Šዎ‰ (Windows) …Šዜƒ trong các –Šዛ ˜‹ዉ liên ዅ– ¯ዒ‰ DLL. ‡ Các ዜ‰ †ዙ‰ có –Š዇ truy …ኼ’ ¯ዅ các hàm API ‡ Các hàm GDI (Graphics Device Interface) cho phép ዜ‰ †ዙ‰ làm ˜‹ዉ… ˜ዔ‹ Š‹዆— ‹዇— –Š‹ዅ– „ዋ ¯ዏ Šዌƒ. ኼ’–”¿Š‹†‘™• 12 12
  17. 9/13/2011 Windows Data Types (1) ‡ 0ዋŠ ‰ŠÂƒ Šዕ –ዝ khóa typedef trong các –ኼ’ tin (windef.h; winbase.h, winuser.h ¯ዛዘ… include trong windows.h). ‡ Ví †ዙ: ± typedef int INT; ± typedef unsigned int UINT; ± char * PSTR ‡ WPARAM (UINT) và LPARAM (LONG) ¯዆— 32 bit ‡ LRESULT: ‹዇— LONG ‡ HANDLE: ዒ–‰‹ž–”ዋ͵ʹ„‹–•ŠØ‰†ኸ—ȋ—•‹‰‡†Ȍ†‘ 0  –኶‘”ƒ¯዇Ž¯ዋŠ†ƒŠ…Š‘ͳ¯ዎ‹–ዛዘ‰ȋˆ‹Ž‡ǡ…ዞƒ•ዐǡ˜î‰ Šዔǡ menu, –‘‘Ž„ƒ”ǥȌǤÀ†ዙǣ ǡ
  18. ǡ hPrevInstance ኼ’–”¿Š‹†‘™• 13 13
  19. 9/13/2011 Windows Data Types (2) .LʀX éQJKśD HANDLE 6͑QJX\rQ-ELWÿʈQKGDQK HWND 6͑QJX\rQ-ELWÿʈQKGDQK BYTE *LiWUʈ-ELWNK{QJGɢX WORD 6͑QJX\rQ-ELWNK{QJGɢX DWORD 6͑QJX\rQ-ELWNK{QJGɢX UINT 6͑QJX\rQNK{QJGɢX-bit. LONG long 32-bit. BOOL .LʀX logic True/False LPSTR &RQWU͏FKX͗L. (char *) LPCSTR +ɮQJFRQWU͏FKX͗L WPARAM 32-bit. LPARAM 32-bit. BSTR *LiWUʈ-ELWWU͏ÿɼQNtWͱ LPVOID &RQWU͏-ELWÿɼQP͙WNLʀXNK{QJ[iFÿʈQK *L͑QJQKɉLPSTR QKɉQJFyWKʀFKX\ʀQVDQJGɞQJ8QLFRGHYj LPTSTR DBCS. *L͑QJQKɉLPCTSTR QKɉQJFyWKʀFKX\ʀQVDQJGɞQJ8QLFRGHYj LPCTSTR DBCS. ኼ’–”¿Š‹†‘™• 14 14
  20. 9/13/2011 Microsoft style (1) ‡ ኸ–…኷…ž…‹዇—†ዟŽ‹ዉ—ዖ”ዒ‰…ዚƒ™‹†‘™•ǡ–²…Žƒ••ǡ–² •–”—…–ǡ–²Šኾ‰•ዎ¯ዋŠ•ዀ¯዆—¯ዛዘ…˜‹ዅ–‹Š‘ƒ À†ዙǣ T²‹዇—†ዟŽ‹ዉ—ǣ
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
9=>0