Đang chuẩn bị nút TẢI XUỐNG, xin hãy chờ
Tải xuống
Giáo trình lập trình C cho Winform- P6: Các ứng dụng của Windows rất dễ sử dụng, nhưng rất khó đối với người đã tạo lập ra chúng. Để đạt được tính dễ dùng đòi hỏi người lập trình phải bỏ ra rất nhiều công sức để cài đặt. | Bài 2 Paint và repaint Trần Minh Thái Vị trí hiển thị ký tự TextOut là tọa độ tương đối trong cửa sổ tọa độ logic . Windows sẽ ánh xạ đơn vị này thành pixel khi hiển thị ký tự. Ở chế độ mặc định tọa độ logic pixel. c Mô hình màu RGB Red - Green - Blue Byte 3 Byte 2 Byte 1 Byte 0 0 Blue Green Red Có giá trị từ 0 - 255 0 0 0 đen 255 255 255 trắng Các hàm API liên quan đến màu đều sử dụng mô hình RGB. Định nghĩa màu COLORREF RGB int red int green int blue . Ví dụ 1 Vẽ hình chữ nhật HDC hDC HPEN hPen oldHPen hDC GetDC hWnd hPen CreatePen PS_SOLỈD 5 RGB 0 0 255 oldHPen HPEN SelectObject hDC hPen Rectangle hDC 20 20 1o0 100 SelectObject hDC oldHPen DeleteObject hPen ReleaseDC hWnd hDC d Tạo lập và giải phóng memory device context Memory device context MDC là một device context ảo không gắn với một thiết bị xuất cụ thể nào. Muốn kết quả kết xuất ra thiết bị vật lý ta phải chép MDC lên một device context thật sự device context có liên kết với thiết bị vật lý . MDC thường được dùng như một device context trung gian để vẽ trước khi thực sự xuất ra thiết bị nhằm giảm sự chớp giật nếu thiết bị xuất là window hay màn hình. Để tạo MDC tương thích với một hDC cụ thể sử dụng hàm CreateCompatibleDC HDC hMemDC hMemDC CreateCompatibleDC hDC Đơn giản hơn có thể đặt NULL vào vị trí hDC Windows sẽ tạo một device context tương thích với màn hình. Bài giảng Lập trình C for Win Trang 26 69 Bài 2 Paint và repaint Trần Minh Thái Hủy MDC bằng hàm DeleteDC. MDC có bề mặt hiển thị như một thiết bị thật. Tuy nhiên bề mặt hiển thị này lúc đầu rất nhỏ chỉ là một pixel đơn sắc. Không thể làm gì với một bề mặt hiển thị chỉ gồm 1 bit như vậy. Do đó cần làm cho bề mặt hiển thị này rộng hơn bằng cách chọn một đối tượng bitmap GDI vào MDC SelectObject hMemDC hBitmap Chỉ có thể chọn đối tượng bitmap vào MDC không thể chọn vào một device context cụ thể được. Sau khi chọn một đối tượng bitmap cho MDC có thể dùng MDC như một device context thật sự. Sau khi được hoàn tất trong MDC ảnh được đưa ra device .