Mình mới làm quen với ứng dụng SDI/MDI trong Visual C++ nên có nhiều điều chưa thực sự rõ lắm.
1. Khi xây dựng ứng dụng SDI/MDI qua Wizard, một số chức năng cơ bản như New, Open, Save ... đã được tạo sẵn. Nhưng mình tìm trong code thì ko thấy => để kiểm soát được các thao tác đó thì phải Override các sự kiện đó ?
2. Trong Visual C++, đối tượng thao tác là Project (.dsp, .dsw), Solution (.sln) gồm nhiều file. Các bạn có ý tưởng gì để xây dựng ứng dụng kiểu như thế ?
Mình chỉ nghĩ được cách sau: (nhưng ko biết là thực tế có như vậy ko)
- Tạo file project là dạng text hoặc binary cũng đc. Trong đó có các trường như resources, path ... chỉ đến các đối tượng cụ thể nằm trong project.
- Khi mở project, đọc các trường đó ra, load từng file một.
- Khi lưu thì ngược lại, save từng file rồi cập nhật project file.
Mình view thử rất nhiều project file của các chương trình khác nhau và thấy cách tổ chức của chúng rất đa dạng. Tìm trên Codeproject, Codeguru đỏ mắt mà vẫn chưa ra một ví dụ mẫu. T_T
Please help me!
Biết rất nhiều nhưng chả có gì gọi là biết!
cái này đúng với một số cái (bạn tham xem thêm cái ID_):Microsoft hộ trợ một số chức năng nếu bạn đặt đúng ID của nó.Code:Khi xây dựng ứng dụng SDI/MDI qua Wizard, một số chức năng cơ bản như New, Open, Save ... đã được tạo sẵn.Vụ overid thì có lẽ (ví dụ bạn thêm chức năng hiển thị Unicode(hay Ansi) chẳng hạn...
còn cái thứ hai bạn nói mình cũng không hiểu ý lắm .Theo mình thì nó còn phụ thuộc vào kiến trúc của chuơng trình (ví dụ Doc/View cũng rất hay)
Nếu muốn xem thêm ví dụ thì trong msdn có mfc sample đó .Thử chưa