Chương 6 Lập trình File & Print

 Windows cung cấp dịch vụ tệp tin và thư mục khá đầy đủ để xử lý trên ổ đĩa, gồm các hàm API được đóng gói trong các lớp của thư viện MFC.  Các lớp gồm CFile: thực hiện các thao tác cơ bản trên file CFileDialog: hộp thoại chọn file

pdf7 trang | Chia sẻ: lylyngoc | Lượt xem: 1490 | Lượt tải: 1download
Bạn đang xem nội dung tài liệu Chương 6 Lập trình File & Print, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
1Chương 6 Lập trình File & Print 26.1. Cơ chế đọc/ghi tệp  Windows cung cấp dịch vụ tệp tin và thư mục khá đầy đủ để xử lý trên ổ đĩa, gồm các hàm API được đóng gói trong các lớp của thư viện MFC.  Các lớp gồm CFile : thực hiện các thao tác cơ bản trên file CFileDialog : hộp thoại chọn file CFile object a file data CFileDialog 36.2. Lớp CFileDialog  Cung cấp một hộp thoại để lựa chọn tệp tin, theo dạng Save hoặc Open  Thư viện khai báo lớp này:  Các phương thức cơ bản CFileDialog( BOOL); int DoModal(); CString GetPathName(); CString GetFileName(); 46.3. Lớp CFile  Cung cấp các chức năng cơ bản về xử lý tệp tin  Các phương thức gồm CFile (); CFile( filename, mode ); Open( filename, mode ); mode = CFile::modeRead / modeWrite / modeCreate / modeReadWrite / typeText / typeBinary... Close(); Read( void *buff, UINT count ); Write( void *data, UINT count ); Seek( pos ); pos = CFile::begin / current / end static Rename( oldname, newname ); static Remove( filename ); 56.4. Cơ chế in tài liệu  Windows cung cấp dịch vụ in cho các ứng dụng dưới dạng đồ họa, thực hiện thông qua ngữ cảnh thiết bị máy in (Device Context).  Lớp CPrintDialog được cung cấp bởi thư viện MFC cho phép chọn thiết bị máy in đã cài đặt trong hệ thống, gồm: CPrintDialog( BOOL SetupOnly); int DoModal(); int GetCopies(); BOOL GetDefault(); HDC GetPrinterDC(); Tài liệu DC máy in 66.5. Các hàm in tài liệu  Lấy HDC từ đối tượng chọn máy in, kết nối vào một đối tượng CDC để thực hiện in bằng lệnh sau: CDC :: Attach( HDC DC_của_máy_in );  Xác định kích thước ngang/dọc của trang in int CDC :: GetDeviceCaps( HORZRES / VERTRES ); // đơn vị pixel int CDC :: GetDeviceCaps( HORZSIZE / VERTSIZE ); // đơn vị cm Tài liệu HDC CDC CPrintDialogGetPrinterDC 76.5. Các hàm in tài liệu  Các bước để in Bước 1) Bắt đầu in tài liệu CDC :: StartDoc( LPDOCINFO ); DOCINFO{ cbSize=kích thước, lpszDocName=tên tài liệu in, ...còn lại =0 } Bước 2) Bắt đầu in một trang mới CDC :: StartPage(); Bước 3) Thực hiện bằng các lệnh xử lý đồ họa, văn bản trên CDC Bước 4) Kết thúc một trang in CDC :: EndPage(); Có thể lặp lại bước 2 để in một trang mới. Bước 5) Kết thúc tài liệu in CDC :: EndDoc();