... menu
C c ví dụ:
Khi user chọn ch c năng v Circle ặ cn th hin 1 du
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 Paste chỉ ... 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...
... (wParam))
{
case IDC_BLACK:
case IDC_RED:
case IDC_GREEN:
case IDC_YELLOW:
case IDC_BLUE:
case IDC_MAGENTA:
case IDC_CYAN:
case IDC_WHITE:
iColor = LOWORD (wParam) ;
for( i = IDC_BLACK, i ... Windows cc 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 Windows c ng rất cao. Cc chương trình ứng dụng ñư c viết ...
crColor[iColor-IDC_BLACK]);
if(iBrush == IDC_HS_CROSS)
hbrush=CreateHatchBrush(HS_CROSS,
crColor[iColor - IDC_BLACK]);
if(iBrush == IDC_HS_DIAGCROSS)
hbrush=CreateHatchBrush(HS_DIAGCROSS,
crColor[iColor...
... dùng, c n
ngày nay chúng ít đư c dựng n.
C c file cha ti nguyờn ca ng dng
ã 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 ... chỉ chứa cc thao t c cần
thiết dưới dạng cc biểu tượng đ c trưng.
Ngoài ra c n rất nhiều cc điều khiển mà cc công clậptrình cung c p cho người lập
trình hay tự họ tạo ra dựa trên những ... LẬPTRÌNHLẬPTRÌNHCTRÊN WINDOWS
Chương 1
TỔNG QUAN LẬPTRÌNHCTRÊN WINDOWS
1.1. MỞ ĐẦU
Để lậptrình trờn Microsoft Windowsđ, chỳng ta cn nm cccc điểm c bản nhất
c a hệ điều hành này. Chương...
... dùng, c n
ngày nay chúng ít đư c dựng n.
C c file cha ti nguyờn ca ng dng
ã 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 ... chỉ chứa cc thao t c cần
thiết dưới dạng cc biểu tượng đ c trưng.
Ngoài ra c n rất nhiều cc điều khiển mà cc công clậptrình cung c p cho người lập
trình hay tự họ tạo ra dựa trên những ... 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 là phần xây dựng một chương trình đơn...
... ReleaseDC( HWND hWnd,
HDC hDC // handle to DC );
Chn cc i tng v vo trong DC
ãHGDIOBJ SelectObject( HDC hdc, HGDIOBJ hgdiobj);
5
HBRUSH
ã CreateBrushIndirect: Creates a brush with a specified ... di chuyển trên màn hình. Robot luôn di
chuyển, người sẽ điều khiển hướng đi c a robot
11
Robot
void DrawRobot(HDC hdc)
{
HDC hRobot = ::CreateCompatibleDC(hdc);
HGDIOBJ hOld = SelectObject( ... vit 1 chng trỡnh c mt robot bc i
trờn mn hỡnh
ãYờu cu:
Mụ t d liu
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 (MFC)
Library
Xem...
... theo sẽ trình bày những khái niệm và yêu c u c n bản c a 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 ...
thường cc công clậptrìnhtrên Windows ñều ccc tool ñể tạo cc nh ny.
ã Con tr chut ca ng dng c thể ñư c vẽ lại dưới dạng cc biểu tượng và lu
trờn ủa vi dng file *.cur.
ã Cc file ... nhưng c thể chuyển sang dạng Unicode
và DBCS.
Tech24.vn
NGÔN NGỮ LẬPTRÌNHLẬPTRÌNHCTRÊN WINDOWS
Trang 6
ðiều trư c tiên c a người h clậptrìnhCtrên Windows là phải biết lậptrình C, ...
... ca ng dng
ã 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ên Windows đều ccc tool để tạo cc ảnh này.
mỗi chương trình chạy trên ... 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ên Windows 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ìnhCtrên ... dưới
dạng cc biểu tượng đ c trưng.
Ngoài ra c n rất nhiều cc điều khiển mà cc công clậptrình cung c p cho người lập trình
hay tự họ tạo ra dựa trên những thành phần đư c cung c p sẵn.
1.4.1.3....
... gcc -c editor .c
5. screen.o : screen .c screen.h
6. gcc -c screen .c
7. keyboard.o : keyboard .c keyboard.h
8. gcc -c keyboard .c
9. clean:
10. rm *.o
Để biên dịch chương trình này ta chỉ c n ...
ã Mt danh sỏch cc thnh phn ph thuc (dependencies) cn to ra ớch
ã Mt danh sỏch cc câu lệnh để th c thi trêncc thành phần phụ thu c
Khi đư c gọi, GNU make sẽ tìm cc file c tên là GNUmakefile, ... trong cc thư m c /usr/lib và /lib. Dưới đây là cc tùy chọn c a lệnh
này:
C c tuỳ chọn Cc miêu tả
-p
Đơn thuần chỉ in ra nội dung c a /etc/ld.so.cache, một danh
sách hiện thời cc thư...
... 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...
... nghĩa, ch c năng và t c dụng c a trình biên dịch gcc.
3. Th c hành cc lệnh trong lậptrình shell
4. Th c hành cc lệnh trong lậptrìnhC
- 63 -
- Cc dòng lệnh bắt đầu bằng dấu # chính ... hoàn chỉnh.
Ta c thể kiểm tra cc thu c tính file, so sánh cc xâu và cc biểu th c số h c.
Chú ý: Cc khoảng trống trƣ c dấu mở ngo c và sau dấu đóng ngo c trong [condition]
là c n phải c . ... dịch gcc
Hệ điều hành UNIX luôn kèm theo bộ dịch ngôn ngữ lậptrìnhC với tên gọi là cc (C
compiler). Trong Linux, bộ dịch c tên là gcc (GNU C Compiler) với ngôn ngữ lậptrình
không khác...
... 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…(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, ... - 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ỉ sử dụng trong...
... 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 vo quỏ trỡnh lu chuyn cc thụng
ip
ặ ng dụng c thể chặn và xử lý cc thông
điệp trư c khi nó đến đư c ... 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 ... liu
strCircle.center = pặcenter;
GlobalUnlock(hData);
CloseClipboard();
}
13/06/200 3C4 W - Clipboard - Nguyen Tri Tuan - DH.KHTN Tp.HCM 74
[3] Cc kỹ thuật … - Truy vấn trên nhiều định dạng
C c...