... &ps) ;
Tech24.vn
NGÔN NGỮ LẬPTRÌNHLẬPTRÌNHCTRÊNWINDOWS
Trang 36
crColor[iColor-IDC_BLACK]);
if(iBrush == IDC_HS_CROSS)
hbrush=CreateHatchBrush(HS_CROSS,
crColor[iColor - IDC_BLACK]); ... - DLL). Windowscc chế liên kết những chương trình ứng
dụng với cc thủ t c ñư c cung c p trong thư viện liên kết ñộng.
Khả năng tương thích c a Windowsc ng rất cao. Cc chương trình ứng ... bỏ chọn cc nút kh c bằng ñoạn lệnh
sau.
case WM_COMMAND:
switch (LOWORD (wParam))
{
case IDC_BLACK:
case IDC_RED:
case IDC_GREEN:
case IDC_YELLOW:
case IDC_BLUE:
case IDC_MAGENTA:
case...
... vi clậptrìnhCtrên
Windows. Ngoài ra, phần này c ng giới thiệu cc cơ chế và cc công c mà hệ điều hành cung c p
cho người lậptrình hay người phát triển cc ứng dụng trên Windows.
Cuối chương ... TRÌNHLẬPTRÌNHCTRÊN WINDOWS
Chương 1
TỔNG QUAN LẬPTRÌNHCTRÊN WINDOWS
1.1. MỞ ĐẦU
Để lậptrìnhtrên Microsoft Windows , chúng ta c n nắm đư ccc đ c điểm c bản nhất
c a hệ điều hành này. Chương ... c n
ngày nay chúng ít đư c dùng đến.
C c file chứa tài nguyên c a ứng dụng
• Cc file *.ico là cc biểu tượng (icon) đư c dùng trong chương trình. Thông
thường cc công clậptrìnhtrên Windows...
... c n
ngày nay chúng ít đư c dùng đến.
C c file chứa tài nguyên c a ứng dụng
• Cc file *.ico là cc biểu tượng (icon) đư c dùng trong chương trình. Thông
thường cc công clậptrìnhtrênWindows ... đến c a sổ cha c a
nó và c a sổ cha c thể thay đổi trạng thái c a cc thành phần điều khiển con như kích hoạt, đánh
dấu (check), bỏ dấu check (uncheck) bằng c ch gởi cc thông điệp đến cc thành ... QUAN LẬPTRÌNHCTRÊN WINDOWS
1.1. MỞ ĐẦU
Để lậptrìnhtrên Microsoft Windows , chúng ta c n nắm đư ccc đ c điểm c bản nhất
c a hệ điều hành này. Chương này sẽ giới thiệu khái quát cc đ c điểm...
... ReleaseDC( HWND hWnd,
HDC hDC // handle to DC );
Chọn cc đối tượng vẽ vào trong DC
•HGDIOBJ SelectObject( HDC hdc, HGDIOBJ hgdiobj);
5
HBRUSH
• CreateBrushIndirect: Creates a brush with a specified ... tả:
Hãy đóng gói HDC thành lớp CMyDC nhằm hỗ trợ người lậptrìnhCtrên
Windows.
• Yêu c u:
classCMyDC {
Public:
PAINTSTRUCT m_ps;
HDC m_hdc;
HWND m_hwnd;
HDC BeginPaint(HWND);
void EndPaint();
void ... viết 1 chương trìnhc một robot bư c đi
trên màn hình
•Yêu c u:
–Mô tả dữ liệu
–Mô tả xử lý cc sự kiện c n thiết
20
DLL?
9
Robot
123
Chuỗi chuyển hình 1213-1213-…
19
Microsoft Foundation Class...
... vi clậptrìnhCtrên
Windows. Ngoài ra, phần này c ng giới thiệu cc cơ chế và cc công c mà hệ điều hành cung c p
cho người lậptrình hay người phát triển cc ứng dụng trên Windows.
Cuối chương ... nguyên c a ứng dụng
• Cc file *.ico là cc biểu tượng (icon) đư c dùng trong chương trình. Thông thường cc công
c lậptrìnhtrênWindows đều ccc tool để tạo cc ảnh này.
mỗi chương trình chạy ... yêu c u đối với người lập trình
Điều trư c tiên c a người h clậptrìnhCtrênWindows là phải biết lậptrình C, sách này
không c tham vọng hướng dẫn người h c có thể thông thạo lậptrìnhC trên...
... export cc class. Ứng dụng kh c có thể tạo cc object
từ class, ho c xây dựng cc lớp kế thừa từ class
DLL sẽ đư c liên kết với cc DLL chuẩn c a MFC theo c ch liên
kết động.
Chỉ ccc ứng ... với cc DLL
chuẩn c a MFC theo c ch liên kết tĩnh.
“using shared MFC DLL”: DLL sẽ đư c liên kết với cc DLL
chuẩn c a MFC theo c ch liên kết động.
MFC Extention DLL:
Cho phép export cc ... điểm:
Dễ th c hiện
Chương trìnhc thể chạy đ c lập, không c n cc file kèm theo
Chương trình sẽ chạy nhanh hơn (nếu kích thư c nhỏ)
Spring 200 4C4 W - DLL - Nguyen Tri Tuan - DH.KHTN Tp.HCM 6
Giới...
... Tp.HCM 15
C c khái niệm c bản - DC trong MFC…(tt)
VD1. Vẽ bằng CDC
CDC* pDC = GetDC();
// Cc lệnh vẽ …
ReleaseDC(pDC);
VD2. Xử lý thông điệp WM_PAINT, dùng lớp CDC
PAINTSTRUCT ps;
CDC* pDC ... niệm c bản - DC trong MFC
C c lớp liên quan đến DC
CDC: là lớp c sở dùng để quản lý DC
CPaintDC:
Dẫn xuất từ lớp CDC,
Dùng với cc thao t c vẽ trong vùng client
c a c a sổ
Chỉ ... niệm c bản - DC trong MFC…(tt)
VD4. Vẽ trên vùng client, dùng lớp CClientDC
void CMainWindow::OnLButtonDown(UINT nFlags,
CPoint point)
{
CRect rect;
GetClientRect(&rect);
CClientDC dc(this);
dc.MoveTo(rect.left,...
... menu
C c ví dụ:
Khi user chọn ch c năng vẽ Circle Æ c n thể hiện 1 dấu
check (;) phía trư c
Ch c năng Cut/Copy/Delete chỉ đư c kích hoạt khi user
đánh dấu chọn 1 đoạn text
Ch c năng ... phần c a c .trình (tt)
CWnd: lớp chính c a MFC để quản lý cc loại c a
sổ giao diện. C nhiều lớp đư c kế thừa từ lớp
này để quản lý cc loại c a sổ kh c nhau
(CTreeCtrl, CListBox, Cedit,…)
CFrameWnd: ... lớp CMainWindow, đư c
gọi khi c n c p nhật nội dung c a sổ. Hàm này đư c
định nghĩa chồng lên hàm chuẩn c a lớp CFrameWnd.
void CMainWindow::OnPaint () {
CPaintDC dc(this);
CRect rect;
GetClientRect...
... là một c chế trong lậptrình sự kiện,…
…cho phép ứng dụng c thể c i đặt một hàm
giám sát vào quá trình lưu chuyển cc thông
điệp
Æ ứng dụng c thể chặn và xử lý cc thông
điệp trư c khi ... Hook
…
8
Spring 200 4C4 W - Hook - Nguyen Tri Tuan - DH.KHTN Tp.HCM 15
Minh họa c ch lậptrình Hook
C c hàm thao t c với Hook
C i đặt thủ t c Hook
Ví dụ thủ t c Hook
Chuyển message cho thủ t c Hook ... Tp.HCM 17
Minh họa c ch lậptrình Hook - C i đặt thủ t c Hook
Một ứng dụng c n phải th c hiện vi c Cài đặt thủ t c Hook
khi muốn giám sát message
Hàm SetWindowsHookEx sẽ c i đặt thủ t c Hook...
... Sơ lư c
C c hàm quản lý vùng nhớ toàn cc chậm
và cung c p ít tính năng hơn cc hàm quản
lý bộ nhớ kh c nên ít đư c dùng
…Tuy nhiên, chúng vẫn đư c dùng với
DDE, Clipboard và cc đối ... c u tr c mô tả hình tròn
struct CIRCLE strCircle; // Lưu kết quả
if (OpenClipboard())
{
HANDLE hData = GetClipboardData(nID);
struct CIRCLE *p =
(struct CIRCLE *) GlobalLock(hData);
// Sao chép ... ứng dụng đều c thể
truy c p đến
Clipboard là một phương th c chuyển dữ
liệu chuẩn đư cWindows cung c p, cho
phép chia xẻ thông tin giữa cc ứng dụng.
48
13/06/200 3C4 W - Clipboard - Nguyen...
... một số trong mã ASCII
Ngoài ra, c n ccc tiêu chuẩn cho cc đ c tính
kh c như trường độ hay nhịp độ c a bản nh c
MIDI thường c kích thư c nhỏ
Không cc ch nào để th c hiện ghi hay phát ... chuỗi
C c câu lệnh bắt đầubằng từ khóa open, play,
stop,…
Ứng với mỗi t c vụ kh c nhau chúng ta sẽ cc u
lệnh với cc định dạng kh c nhau nhưng nhìn
chung chúng cc ng một c u tr c tổng ... dành
cho audio kĩ thuậtsố trên
nềntảng PC c a Intel.
File audio phảicókích
thư c thích hợpvớibộ nhớ
c sẵn.
Không thểđượcsử dụng
mộtcáchđồng thờibởinhiều
tiểu trình trong c ng mộttiến
trình.
Cung...