1. Trang chủ
  2. » Giáo án - Bài giảng

Giáo án - Bài giảng: BÀI GIẢNG MÔN LẬP TRÌNH WINDOWS

348 621 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Bài Giảng: Bài Giảng Môn Lập Trình Windows
Tác giả Nguyễn Thị Mai Trang
Người hướng dẫn Nguyễn Thị Mai Trang
Trường học Trường Đại Học Công Nghệ Thông Tin - ĐHQG Hà Nội
Chuyên ngành Lập trình Windows
Thể loại Bài giảng
Năm xuất bản N/A
Thành phố Hà Nội
Định dạng
Số trang 348
Dung lượng 3,38 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

GV: Nguyễn Thị Mai Trang 6thống và có một phần bộ nhớ thường trú – Nhiều chương trình có thể được kích hoạt chạy cùng một lúc – Tư tưởng hướng đối tượng: các cửa sổ ứng dụng chính và các

Trang 1

GV: Nguyễn Thị Mai Trang 1

Tổng quan về Lập

trình Windows và

thư viện MFC

Trang 2

GV: Nguyễn Thị Mai Trang 2

 Giới thiệu thư viện lập trình MFC và môi

Trang 3

GV: Nguyễn Thị Mai Trang 3

 Thư viện lập trình MFC

Trang 4

GV: Nguyễn Thị Mai Trang 4

– Các ứng dụng Windows có giao diện thống

nhất

• Cửa sổ hình chữ nhật

• Thanh tiêu đề

• Thanh thực đơn (menu)

• Thanh công cụ (Toolbar)

• Thanh cuộn (Scrollbar)

• Hộp hội thoại (Dialog)

• V

Trang 5

GV: Nguyễn Thị Mai Trang 5

Trang 6

GV: Nguyễn Thị Mai Trang 6

thống và có một phần bộ nhớ thường trú

– Nhiều chương trình có thể được kích hoạt chạy cùng một lúc

– Tư tưởng hướng đối tượng: các cửa sổ ứng dụng

chính và các cửa sổ con là các đối tượng của lớp cửa

sổ được đăng ký trước.

 Giao diện đồ họa độc lập thiết bị

– Cho phép tạo các đối tượng đồ họa và định dạng văn bản

– Chương trình viết cho Windows không điều khiển trực tiếp thiết bị xuất ra màn hình, máy in mà thông qua một ngôn ngữ lập trình đồ họa gọi là Giao diện thiết bị

đồ họa (Graphics device Interface – GDI)

Trang 7

GV: Nguyễn Thị Mai Trang 7

– Windows và các ứng dụng Windows hoạt động theo

cơ chế truyền – nhận thông điệp.

– Các hoạt động của chương trình thay đổi tùy theo

thông điệp nhận được.

– Thông điệp được truyền qua lại giữa những ứng dụng

và cửa sổ, giữa các ứng dụng với nhau.

– Cửa sổ ứng dụng được tự động vẽ lại mỗi khi có sự thay đổi về kích thước Điều này được thực hiện nhờ

hệ điều hành gởi thông điệp cho chương trình.

Trang 8

GV: Nguyễn Thị Mai Trang 8

– Biểu tượng (icons).

– Con trỏ (cursors).

– Hình ảnh (Bitmaps).

– Bảng các chuỗi hằng (string tables).

– Bảng phím tắt (Accelerator).

– Hộp hội thoại (Dialog)

– Thanh thực đơn (menu)

– Thanh công cụ (toolbar)

– Siêu văn bản (HTML).

Trang 9

GV: Nguyễn Thị Mai Trang 9

– Tài nguyên được Windows cung cấp sẵn (tài nguyên chuẩn).

– Tài nguyên do người sử dụng tạo thông qua một tập tin tài nguyên có phần mở rộng là rc

(Resource Script)

– Môi trường lập trình Windows cung cấp công

cụ để người sử dụng dễ dàng tạo, soạn thảo nội dung các tài nguyên.

Trang 10

GV: Nguyễn Thị Mai Trang 10

Trang 11

GV: Nguyễn Thị Mai Trang 11

Programming Interface):

– Là những hàm mà hệ điều hành Windows cung cấp

để cho các ứng dụng có thể sử dụng truy cập các tài nguyên trong hệ thống.

– Những hàm trên được chứa trong các thư viện liên

kết động (Dinamic Link Library – DLL) của hệ thống

và mọi ứng dụng đều có thể truy cập đến các hàm đó.

– Các chương trình ứng dụng sử dụng các hàm API thông qua các lời gọi hàm.

– Trong API có một số hàm có chức năng duy trì sự

độc lập thiết bị đồ họa, các hàm này gọi là giao diện

thiết bị đồ họa GDI (Graphics Device Interface)

Trang 12

GV: Nguyễn Thị Mai Trang 12

– Mọi sự kiện xảy ra trên một chương trình

Windows đều thông qua những thông điệp

(messages)

– Thông điệp phát sinh khi: nhấn một nút trên bàn phím, di chuyển hoặc nhấn chuột, thay

đổi kích thước cửa sổV

– Với mỗi thông điệp nhận được, chương trình ứng dụng sẽ có hành động thích hợp đáp

ứng với thông điệp.

Trang 13

GV: Nguyễn Thị Mai Trang 13

Trang 14

GV: Nguyễn Thị Mai Trang 14

– Thông điệp được gởi vô hàng đợi thông điệp để chờ

xử lý (queue message): bao gồm các thông điệp

được phát sinh từ bàn phím, chuột

(WM_MOUSEMOVE, WM_LBUTTONDOWN,

WM_KEYDOWN, WM_CHAR,V)

• Windows dùng một hàng đợi để chứa thông điệp nhận được, mỗi một chương trình đều có một hàng đợi chứa thông điệp riêng

• Windows sẽ chuyển thông điệp từ hàng đợi chứa thông điệp của hệ thống đến hàng đợi chứa thông điệp của chương trình.

• Hàng đợi chứa thông điệp của chương trình chịu trách nhiệm giữ tất cả các thông điệp của tất cả các cửa sổ thuộc chương trình.

Trang 15

GV: Nguyễn Thị Mai Trang 15

điệp thời gian, thông điệp vẽ, và thông điệp thoát như

WM_TIMER, WM_PAINT, WM_QUIT

– Với những ứng dụng đa tiểu trình thì mỗi một tiểu trình có tạo cửa sổ thì sẽ có một vòng lặp thông điệp để xử lý thông điệp của những cửa sổ trong tiểu trình đó.

Trang 16

GV: Nguyễn Thị Mai Trang 16

– WM_CHAR: Một ký tự nhập từ bàn phím

– WM_CREATE: Một cửa sổ được tạo.

– WM_DESTROY: Một cửa sổ được hủy.

– WM_LBUTTONDOWN: Nhấn phím trái chuột

– WM_LBUTTONUP: Nhả phím chuột

– WM_PAINT: Một cửa sổ được vẽ lại

– WM_QUIT: Kết thúc ứng dụng

– WM_SIZE: Thay đổi kích thước cửa sổ

– WM_TIMER: sự kiện về thời gian

– V

Trang 17

GV: Nguyễn Thị Mai Trang 17

Trang 18

GV: Nguyễn Thị Mai Trang 18

Trang 19

GV: Nguyễn Thị Mai Trang 19

Trang 20

GV: Nguyễn Thị Mai Trang 20

Trang 21

GV: Nguyễn Thị Mai Trang 21

Trang 22

GV: Nguyễn Thị Mai Trang 22

int

int WINAPI WINAPI WINAPI WinMain WinMain WinMain (HINSTANCE hInstance,

HINSTANCE hPrevInstance, LPSTR lpszCmdLine,

int nCmdShow)

Handle đến chương

trình hiện hành

Tham số dòng lệnh

Cách hiển thị cửa sổ (SW_SHOWNORMAL hoặc

SW_SHOWMINNOACTIVE)

Handle đến chương trình trước đó

Trang 23

GV: Nguyễn Thị Mai Trang 23

– Định nghĩa lớp cửa sổ ứng dụng.

– Đăng ký lớp cửa sổ vừa định nghĩa.

– Tạo ra thể hiện cửa sổ của lớp đã cho.

– Hiển thị cửa sổ.

Trang 24

GV: Nguyễn Thị Mai Trang 24

LRESULT CALLBACK WndProc ( HWND,

UINT, WPARAM, LPARAM );

Định danh cửa sổ

Định danh thông điệp

Thông tin bổ sung kèm

theo thông điệp

Trang 25

GV: Nguyễn Thị Mai Trang 25

– Xử lý tất cả các thông điệp có liên quan đến cửa sổ

– Một chương trình Windows có thể chứa nhiều hơn

một hàm xử lý cửa sổ

– Một hàm xử lý cửa sổ luôn kết hợp với một lớp cửa

sổ đặc thù

– Hàm xử lý cửa sổ thường được đặt tên là WndProc.

– Hàm WndProc có chức năng giao tiếp với bên ngoài, tức là với Windows, toàn bộ các thông điệp gởi đến cửa sổ đều được xử lý qua hàm này.

Trang 26

GV: Nguyễn Thị Mai Trang 26

UINT cbSize; //kích thước của cấu trúc

UINT style; //kiểu lớp

WNDPROC lpfnWndProc; //con trỏ đến thủ tục cửa sổ

int cbClsExtra; //các byte phụ trội để thêm

vào cấu trúc WNDCLASS khi đăng ký

int cbWndExtra; ;//các byte phụ trội để thêm

vào các đối tượng cửa sổ được tạo bởi lớp này

HANDLE hInstance; //istance làm chủ class này

HICON hIcon; //biểu tương khi cửa sổ hiển thị

HCURSOR hCursor; //con trỏ chuột

HBRUSH hbrBackground; //màu nền

LPCTSTR lpszMenuName; //tên menu

LPCTSTR lpszClassName; //tên lớp nhận biết

WNDCLASS này cho hệ thống

} WNDCLASSEZ;

Trang 27

GV: Nguyễn Thị Mai Trang 27

– Sau khi định nghĩa một lớp cửa sổ, phải đăng

ký lớp cửa sổ đó bằng hàm RegisterClass

– ATOM RegisterClass( CONST WNDCLASS * lpWndClass );

Trang 28

GV: Nguyễn Thị Mai Trang 28

HWND hwnd = CreateWindow (

ClassName, // Tên lớp cửa sổ đã đăng ký

WindowName, // tiêu đề cửa sổ

Style, // kiểu cửa sổ

x, // Vị trí ngang ban đầu

y, // Vị trí dọc ban đầu

Width, // Độ rộng ban đầu

Height, // Độ cao ban đầu

Parent, // Định danh của cửa sổ cha

Menu, // Định danh của menu

Instance, // Định danh thể hiện ứng dụng

Param); // Các tham số ban đầu

Trang 29

GV: Nguyễn Thị Mai Trang 29

while ( GetMessage(&msg, NULL, 0 ,0) )

Trang 30

GV: Nguyễn Thị Mai Trang 30

typedef struct tagMSG

thông tin phụ thuộc vào từng thông điệp

cụ thể

Thời gian đặt thông điệp trong

hàng đợi Tọa độ của chuột

Trang 31

GV: Nguyễn Thị Mai Trang 31

– hwnd: Định danh của cửa sổ mà thông điệp phát sinh.

– message : Định danh của thông điệp, ví dụ như thông điệp phát sinh khi bấm nút chuột trái là

WM_LBUTTONDOWN có giá trị 0x0201.

– wParam : Tham số 32-bit chứa các thông tin phụ

thuộc vào từng thông điệp cụ thể.

– lParam : Tham số 32-bit phụ thuộc vào thông điệp.

– time : Thời gian đặt thông điệp trong hàng đợi.

– pt : Tọa độ của chuột khi đặt thông điệp vào hàng đợi

Trang 32

GV: Nguyễn Thị Mai Trang 32

ngữ để mô tả kiểu dữ liệu, theo sau là tên biến

Trang 33

GV: Nguyễn Thị Mai Trang 33

Class library) là một công cụ quan trọng để xây

dựng nhanh những chương trình ứng dụng trên nền Windows bằng ngôn ngữ C++

 MFC được viết ra với mục đích làm cho việc lập trình Windows dễ dàng hơn bằng cách cung cấp những lớp đối tượng với những hành vi và thuộc tính (property) dưới dạng những biến handle giải quyết mọi công việc thông dụng trong chương trình Windows

Trang 34

GV: Nguyễn Thị Mai Trang 34

ứng dụng (application framework) cho việc lập trình trên Windows.

cần thiết cho việc quản lý cửa sổ, các trình đơn, hộp hội thoại, thực hiện các thao tác xuất nhập cơ bản, lưu trữ tập hợp các đối tượng dữ liệu

Trang 35

GV: Nguyễn Thị Mai Trang 35

– Cung cấp những đối tượng dễ dàng sử dụng

– MFC chứa đựng hầu hết các cấu trúc dữ liệu quan trọng và các lời gọi hàm API (Application Program Interface)

– Bao gồm các lớp đối tượng với sự gói gọn về

mã lệnh và dữ liệu trong một lớp và sự kế

thừa lớp.

– Cung cấp các hàm thư viện, các điều khiển, các thông điệp, đồ họa GDI, trình đơn và các hộp hội thoạiV

Trang 36

GV: Nguyễn Thị Mai Trang 36

– Các lớp ứng dụng chính trong MFC bao gồm việc khởi tạo, chạy và chấm dứt ứng dụng

– Thư viện lập trình MFC có hơn 200 lớp, chia làm nhiều nhóm thực hiện các công việc đặc trưng như: quản lý ứng dụng, kiểu dữ liệu,

các ô điều khiển, khung đối thoại, đồ họaV

Trang 37

GV: Nguyễn Thị Mai Trang 37

Trang 38

GV: Nguyễn Thị Mai Trang 38

Trang 39

GV: Nguyễn Thị Mai Trang 39

Trang 40

GV: Nguyễn Thị Mai Trang 40

Trang 41

GV: Nguyễn Thị Mai Trang 41

Trang 42

GV: Nguyễn Thị Mai Trang 42

Trang 43

GV: Nguyễn Thị Mai Trang 43

Trang 44

GV: Nguyễn Thị Mai Trang 44

Trang 45

GV: Nguyễn Thị Mai Trang 45

menu File, chọn NewV

Trang 46

GV: Nguyễn Thị Mai Trang 46

kế tiếp chọn tùy theo yêu cầu của ứng

dụng hoặc có thể để mặc định

Trang 47

GV: Nguyễn Thị Mai Trang 47

Workspace

Toolbox

Trang 48

GV: Nguyễn Thị Mai Trang 48

Hình ảnh tổng thể

của project dưới

Những tài nguyên có trong project

Trang 49

GV: Nguyễn Thị Mai Trang 49

ứng dụng như sau:

Trang 50

GV: Nguyễn Thị Mai Trang 50

Trang 51

GV: Nguyễn Thị Mai Trang 51

Trang 52

GV: Nguyễn Thị Mai Trang 52

Trang 53

GV: Nguyễn Thị Mai Trang 53

Trang 54

GV: Nguyễn Thị Mai Trang 54

Trang 55

GV: Nguyễn Thị Mai Trang 55

Trang 56

GV: Nguyễn Thị Mai Trang 56

Các giá trị của m_nCmdShow: SW_SHOWNORMAL,

SW_SHOWMINIMIZED, SW_SHOWMAXIMIZED

Trang 57

GV: Nguyễn Thị Mai Trang 57

Trang 58

GV: Nguyễn Thị Mai Trang 1

Thiết bị ngữ cảnh

và các phương

pháp vẽ

Trang 59

GV: Nguyễn Thị Mai Trang 2

 Giới thiệu giao diện thiết bị đồ họa GDI,

một công cụ rất quan trọng để vẽ các đối tượng hình học, hình ảnh và văn bản.

 Giới thiệu một số hàm trong thư viện đồ

họa GDI để vận dụng vào việc lập trình

 Qua chương này, sinh viên có thể xây

dựng được các ứng dụng xuất văn bản, hình ảnh và vẽ được một số đối tượng

theo yêu cầu.

Trang 60

GV: Nguyễn Thị Mai Trang 3

Trang 61

GV: Nguyễn Thị Mai Trang 4

 Giới thiệu giao diện thiết bị đồ họa (GDI)

 Hệ thống tọa độ

 Các đối tượng thiết bị ngữ cảnh

Trang 62

GV: Nguyễn Thị Mai Trang 5

 GDI là ththư viện cung cấp các hàm và

các cấu trúc dữ liệu cần thiết để ứng dụng tạo ra những kết xuất dưới dạng đồ họa (hiển thị lên màn hình, in ra máy in,U)

đường cong, các hình đa giác, xuất ký tự, hiển thị ảnh bitmap, in ấn,U

 GDI không tương tác trực tiếp với thiết bị phần cứng, mà thông qua các trình điều khiển thiết bị.

Trang 63

GV: Nguyễn Thị Mai Trang 6

 Các thiết bị đồ họa (Graphics device): Là những thiết bị cho phép thể hiện các kết xuất dạng đồ họa trên đóU

– Thiết bị vật lý (physical device): là những thiết

bị thật như màn hình, cửa sổ, máy in,U

– Thiết bị “ảo” (logical device): là các thiết bị

được giả lập trong bộ nhớ, còn gọi là

“memory device”, có tác dụng mô phỏng thiết

bị vật lý

Trang 64

GV: Nguyễn Thị Mai Trang 7

Trang 65

GV: Nguyễn Thị Mai Trang 8

 Muốn sử dụng một hệ thống tọa độ khác, gọi hàm CDC::SetMapMode

 Ví dụ:

Trang 66

GV: Nguyễn Thị Mai Trang 9

 Bút vẽ (pen) : để vẽ các đường thẳng và hình dáng

 Chổi vẽ (brush): để tô các vùng của hình

vẽ trên màn hình

 Kiểu chữ (font) : hiển thị văn bản

 Màu (colors).

Trang 67

GV: Nguyễn Thị Mai Trang 10

Trang 68

GV: Nguyễn Thị Mai Trang 11

Trang 69

GV: Nguyễn Thị Mai Trang 12

 CPaintDC: Vẽ trong vùng client của cửa

sổ, đáp ứng với sự kiện WM_PAINT, dùng trong hàm OnPaint()

 CClientDC: tạo ra một ngữ cảnh thiết bị vẽ trong vùng client của cửa số, có thể sử

Trang 70

GV: Nguyễn Thị Mai Trang 13

 Quy trình vẽ

 Tạo và sử dụng các đối tượng thiết bị ngữ cảnh

 Các thao tác vẽ cơ bản

Trang 71

GV: Nguyễn Thị Mai Trang 14

Trang 72

GV: Nguyễn Thị Mai Trang 15

Trang 73

GV: Nguyễn Thị Mai Trang 16

 Ngoài ra, có thể sử dụng đối tượng thuộc các lớp thiết bị ngữ cảnh theo hai cách:

– Khai báo đối tượng, sử dụng phương thức

thiết lập của lớp (không cần hủy đối tượng)

– Tạo một đối tượng của lớp thiết bị ngữ cảnh (phải hủy sau khi sử dụng)

Trang 74

GV: Nguyễn Thị Mai Trang 17

 Các lớp đối tượng thiết bị ngữ cảnh dùng để vẽ bao gồm:

– CPen: công cụ vẽ điểm hoặc đường thẳng

– CBrush: công cụ tô màu

– CFont: công cụ tạo phông chữ

Trang 75

GV: Nguyễn Thị Mai Trang 18

 Tạo bút vẽ

Trang 76

GV: Nguyễn Thị Mai Trang 19

 Một số nét vẽ

Trang 77

GV: Nguyễn Thị Mai Trang 20

Trang 78

GV: Nguyễn Thị Mai Trang 21

Trang 79

GV: Nguyễn Thị Mai Trang 22

Trang 80

GV: Nguyễn Thị Mai Trang 23

Trang 81

GV: Nguyễn Thị Mai Trang 24

Trang 82

GV: Nguyễn Thị Mai Trang 25

 Chọn đối tượng thiết bị ngữ cảnh

– Sử dụng hàm SelectObject để chọn một đối tượng thiết bị ngữ cảnh

– Các đối tượng có thể được chọn với

Trang 83

GV: Nguyễn Thị Mai Trang 26

 Chọn đối tượng thiết bị ngữ cảnh (tt)

– Sử dụng hàm SelectStockObject để chọn một đối tượng thiết bị ngữ cảnh chuẩn

Trang 84

GV: Nguyễn Thị Mai Trang 27

Trang 85

GV: Nguyễn Thị Mai Trang 28



– SetPixel: vẽ một điểm

– MoveTo: Đặt vị trí hiện hành trước khi vẽ.

– LineTo : vẽ đoạn thẳng từ vị trí hiện tại đến điểm cuối đoạn thẳng

– PolyBezier: Vẽ một hoặc nhiều đường cong bất kỳ.

– PolyBezierTo: Vẽ đường cong và đặt vị trí hiện hành tại cuối đường cong vừa vẽ

Trang 86

GV: Nguyễn Thị Mai Trang 29

 PolyBezier

Trang 87

GV: Nguyễn Thị Mai Trang 30

Trang 88

GV: Nguyễn Thị Mai Trang 31

– Mặc định, một cung được vẽ ngược chiều kim đồng hồ.

– Để thay đổi chiều vẽ cung, sử dụng hàm:

int SetArcDirection(int nArcDirection);

Trang 89

GV: Nguyễn Thị Mai Trang 32

 Một số ví dụ

Trang 90

GV: Nguyễn Thị Mai Trang 33

 Một số ví dụ

Trang 91

GV: Nguyễn Thị Mai Trang 34

Trang 92

GV: Nguyễn Thị Mai Trang 35

 Ellipse và Circle

Trang 93

GV: Nguyễn Thị Mai Trang 36

Trang 94

GV: Nguyễn Thị Mai Trang 37

Trang 95

GV: Nguyễn Thị Mai Trang 38

Trang 96

GV: Nguyễn Thị Mai Trang 39

 Một số ví dụ

Trang 97

GV: Nguyễn Thị Mai Trang 40

 Một số ví dụ

Trang 98

GV: Nguyễn Thị Mai Trang 41

 Một số ví dụ

Trang 99

GV: Nguyễn Thị Mai Trang 42

 Một số ví dụ

Trang 100

GV: Nguyễn Thị Mai Trang 43

Trang 101

GV: Nguyễn Thị Mai Trang 44

 Giới thiệu một số hàm vẽ văn bản

 Font chữ:

– Các hàm tạo font chữ

– Sử dụng font

 Một số ví dụ

Trang 102

GV: Nguyễn Thị Mai Trang 45

Trang 103

GV: Nguyễn Thị Mai Trang 46

– CreateFont

– CreateFontIndirect

– CreatePointFont

– CreatePointFontIndirect

Trang 104

GV: Nguyễn Thị Mai Trang 47

Chiều cao, rộng

Góc giữa hai ký tự Phương và chiều

Kiểu in đậm, nghiêng, gạch dưới, gạch ngang thân chữ

Tên font chữ

Trang 105

GV: Nguyễn Thị Mai Trang 48

 Ví dụ

Trang 106

GV: Nguyễn Thị Mai Trang 49

 Ví dụ

Trang 107

GV: Nguyễn Thị Mai Trang 50

Trang 108

GV: Nguyễn Thị Mai Trang 51

 Tạo font chữ với cấu trúc LOGFONT

Trang 109

GV: Nguyễn Thị Mai Trang 52

 Ví dụ

Trang 110

GV: Nguyễn Thị Mai Trang 53

Trang 111

GV: Nguyễn Thị Mai Trang 54

 Ví dụ

Trang 112

GV: Nguyễn Thị Mai Trang 55

Trang 113

GV: Nguyễn Thị Mai Trang 56

Kết quả hiển thị

Trang 114

GV: Nguyễn Thị Mai Trang 57

Trang 115

GV: Nguyễn Thị Mai Trang 58

Kết quả hiển thị

Trang 116

GV: Nguyễn Thị Mai Trang 59

 Khái niệm về Memory Device Context (MDC)

 Tạo và sử dụng MDC

Trang 117

GV: Nguyễn Thị Mai Trang 60

 Nếu thực hiện nhiều thao tác vẽ trực tiếp trên thiết bị ngữ cảnh của màn hình →

màn hình bị giật → Khắc phục: sử dụng

MDC (còn gọi là thiết bị ngữ cảnh ảo).

 Memory device context (MDC) là một thiết

bị ảo không gắn với một thiết bị xuất cụ

thể nào MDC được sử dụng như một thiết

bị ngữ cảnh trung gian để vẽ trước khi

xuất ra màn hình.

Trang 118

GV: Nguyễn Thị Mai Trang 61

– Tạo ra một thiết bị ngữ cảnh ảo (MDC) trong

bộ nhớ tương thích với thiết bị ngữ cảnh thật,

sử dụng hàm CreateCompatibleDC

– Bề mặt hiển thị ban đầu của MDC rất nhỏ, chỉ

là một pixel Do đó, cần chọn một đối tượng bitmap GDI vào MDC.

– Thực hiện các thao tác vẽ trên MDC này

– Chép nội dung của MDC vào DC thật

– Hủy MDC

Trang 119

GV: Nguyễn Thị Mai Trang 62

Ngày đăng: 16/04/2014, 15:11

HÌNH ẢNH LIÊN QUAN

Hình ảnh tổng thể - Giáo án - Bài giảng: BÀI GIẢNG MÔN LẬP TRÌNH WINDOWS
nh ảnh tổng thể (Trang 48)

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w