Viết chương trình bằng Visual C++ cho phép người dùng vẽ các đối tượng hình học như: đường tròn, ellipse, hình chữ nhật, đường thẳng. Chương trình cho phép người dùng thực hiện các thao tác như sau:
- Chọn loại đối tượng cần vẽ từ Toolbox (Draw Object)
11 trang |
Chia sẻ: haohao89 | Lượt xem: 1995 | Lượt tải: 1
Bạn đang xem nội dung tài liệu Bài giảng Đặc tả yêu cầu bài tập Project 01, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Ths Trần Ngọc Bảo 1/3
ĐẶC TẢ YÊU CẦU BÀI TẬP PROJECT 01
Nội dung yêu cầu: Viết chương trình cho phép người dùng vẽ một số đối tượng hình học
1. Tóm tắt yêu cầu
Viết chương trình bằng Visual C++ cho phép người dùng vẽ các đối tượng hình học như : đường
tròn, ellipse, hình chữ nhật, đường thẳng. Chương trình cho phép người dùng thực hiện các thao tác
như sau:
- Chọn loại đối tượng cần vẽ từ Toolbox (Draw Object)
- Cho phép chọn đối tượng sau khi vẽ (Select Object), di chuyển (Move) đối tượng từ vi trí này
sao vị trí khác trên màn hình, thay đổi kích thước (Resize) của đối tượng.
- Xác lập thuộc tính của từng loại đối tượng thông qua Diaglog.
- Lưu (Save) “bản vẽ” vào database trong SQL Server.
- Hiển thị (Load) “bản vẽ” được lưu từ database trong SQL Server.
2. Yêu cầu chi tiết
2.1. Draw Object
- Xây dựng các lớp đối tượng : CCircle, CRectangle, CLine, CEllipse để vẽ các đối tượng (sử
dụng kế thừa nếu có).
- Với mỗi loại đối tượng Circle, Rectangle,…cho phép người dùng xác định thuộc tính:
STT Thuộc tính Ý nghĩa
1 BorderColor Màu đường viền
2 FillStyle Kiểu tô đối tượng
3 FillColor Màu tô (khi chọn kiểu tô là SOLID, thì màu tô sẽ thay
thế màn nền)
4 Top Tọa độ trên (Y)
5 Left Toạ độ bên trái (X)
6 Height Chiều cao của đối tượng
7 Width Chiều rộng
- Với đối tượng Line
STT Thuộc tính Ý nghĩa
1 LineColor Màu đường thẳng
2 LineStyle Nét liền, nét đứt,…
3 Width Độ dày của đường thẳng
4 X1 Toạ độ điểm đầu X1
5 Y1 Toạ độ điểm đầu Y1
6 X2 Toạ độ điểm cuối X2
7 Y2 Toạ độ điểm cuối Y2
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM TP,HCM
KHOA TOÁN – TIN HỌC
Project 01: Paint
Ths Trần Ngọc Bảo 2/3
2.2. Select, Move & Resize
- Select :chọn đối tượng bằng cách Click chuột vào vị trí của đối tượng được vẽ trên màn hình.
- Move:Di chuyển 1 hay nhiều đối tượng từ vị trí này sang vị trí khác trên màn hình.
- Resize: thay đổi kích thước của 1 đối tượng đang được chọn trên màn hình.
2.3. Properties Dialog
Với mỗi loại đối tượng, cho phép người dùng xác lập thuộc tính của các đối tượng thông qua
Dialog tương ứng.
2.4. Load & Save bản vẽ
- Save: Sau khi vẽ các đối tượng trên màn hình, người sử dụng chọn chức năng Save, chương
trình sẽ thực hiện lưu toàn bộ bản vẽ vào file có cấu trúc (dạng binary *.drw).
- Load: Cho phép load file *.drw được lưu bởi chương trình.
3. Kết quả chương trình
Chương trình minh họa với giao diện như sau:
Project 01: Paint
Ths Trần Ngọc Bảo 3/3
Dialog Xác lập FillStyle & FillColor Dialog xác lập LineStyle, LineColor, Width
Ths Trần Ngọc Bảo 1/8
ĐẶC TẢ YÊU CẦU BÀI TẬP PROJECT 02
Nội dung yêu cầu: Viết chương trình quản lý học sinh với yêu cầu như sau
1.1. Cơ sở dữ liệu chương trình gồm có các Table sau (CSDL MS Access or SQL Server)
- Table NguoiDung: quản lý danh sách “người dùng” được phép đăng nhập vào hệ thống, với
cấu trúc & dữ liệu tương ứng như sau:
MaND
(ID)
TenND
(UserName)
MatKhau
(Password)
HoTen
(FullName)
DiaChi
(Address)
Email
1 Admin Admin Quản trị hệ
thống
123 Truong
Dinh
admin@yahoo.com
2
CDSPBD dhsp DHSP 280 An
Duong
Vuong
dhsp@yahoo.com
3 Sv01 Sv01 Sinh Viên 153/2
Hoàng Văn
Thụ
Sv01@yahoo.com
- Table HocSinh: quản lý danh sách học sinh của chương trình, với các field như sau
STT Tên field Kiểudữ liệu Ghi chú
MaHS Autonumber Mã học sinh, khóa
chính
Ho Text Họ và chữ lót
Ten Text Tên học sinh
NgaySinh Date Ngày sinh
DiaChi Text Địa chỉ
DienThoai Text Điện thoại
Email Text
TonGiao Text Tôn giáo
DanToc Text Dân tộc
GioiTinh Integer Giới tính
0: Nữ
1: Nam
AnhVan Integer Anh văn
0: không có
1: có
PhapVan Integer Pháp văn
0: không có
1: có
HoaVan Integer Hoa văn
0: không có
1: có
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM TP,HCM
KHOA TOÁN – TIN HỌC
Bài tập thực hành project 02
Ths Trần Ngọc Bảo 2/8
HoTenCha Text Họ tên cha
NgheNghiepCha Text Nghề nghiệp của Cha
DiaChiCha Text Địa chỉ của cha
HoTenMe Text Họ tên mẹ
NgheNghiepMe Text Nghề nghiệp của mẹ
DiaChiMe Text Địa chỉ của mẹ
- Table DanToc: lưu trữ danh mục dân tộc
MaDT Ten
K Kinh
T Tày
M Mường
H H’Mông
- Table TonGiao: lưu trữ danh mục tôn giáo
MaTG Ten
PG Phật giáo
KG Không
TC Thiên chúa giáo
CD Cao đài
HH Hòa hảo
1.2. Viết chương trình thể hiện màn hình “Đăng nhập” (login) chương trình như sau
- Khi nhấn vào nút “Đăng nhập”, thực hiện kiểm tra
o Nếu tên người dùng và mật khẩu tồn tại trong Table NguoiDung thì
Ẩn màn hình “Đăng nhập”
Hiển thị màn hình chính với hình thức thể hiện như hình màn hình chính bên
dưới
• Nếu TenND = “Admin” thì cho phép xem tất cả các chức năng trong
hệ thống menu
Bài tập thực hành project 02
Ths Trần Ngọc Bảo 3/8
• Nếu TenND = “DHSP” thì cho phép xem tất cả các chức năng trong
hệ thống menu ngoại trừ chức năng “Quản lý người dùng” trong hệ
thống và “danh mục”
• Ngược lại thì cho phép xem tất cả các chức năng trong hệ thống
menu ngoại trừ chức năng “Quản lý người dùng” trong “hệ thống”,
“danh mục”, “Quản lý học sinh”
o Ngược lại: thông báo “Không đúng tên người dùng/mật khẩu”
- Khi nhấn vào nút “Thoát” hiển thị thong báo “Bạn có muốn thoát chương trình không ?”
o Nếu chọn “Yes”Æ Kết thúc chương trình
o Ngược lại: trở lại màn hình đăng nhập.
Bài tập thực hành project 02
Ths Trần Ngọc Bảo 4/8
- Hệ thống Menu như sau:
Hệ thống thực đơn
Hệ thống Danh mục Quản lý học sinh Báo cáo thống kê Giúp đỡ
- Cấu hình hệ thống
- Quản lý người dùng
- Đăng nhập
- Đổi mật khẩu
- Thoát
- Danh mục giáo viên
- Danh mục quận
huyện
- Danh mục loại hồ sơ
- Hồ sơ học sinh
- Phân lớp
- Xem điểm
- Điểm danh
- Khen thưởng
- Kỷ luật
- Thống kê danh sách
học sinh
- Bảng điểm
- Hướng dẫn sử
dụng
- Tác giả
Bài tập thực hành project 02
Ths Trần Ngọc Bảo 5/8
- Nhấn vào chức năng “Hệ thống\Đăng nhập” trong menu hoặc nút hình “Chùm khóa”
trên ToolBar, hiển thị màn hình đăng nhập cho phép đăng nhập lại.
- Nhấn vào chức năng “Hệ thống\Thoát”: Kết thúc chương trình
- Nhấn vào chức năng “Hệ thống\Quản lý người dùng” trong menu hoặc nút hình “3
người” trên ToolBar, hiển thị màn hình quản lý người dùng như hình bên dưới.
o Khi màn hình vừa được load, không cho phép người dùng thao tác
Các TextBox
Các nút: Ghi, Không, Thoát
o Xử lý nút lệnh “Thêm”: thêm mới người dùng
Cho phép nhập thông trong các TextBox (trừ thông tin ID)
Disbale các nút lệnh “Thêm”, “Xóa”, “Sửa”, “Thoát”
Enable các nút lệnh “Ghi”, “Không”
o Xử lý nút lệnh “Xóa”:
Nếu TenNguoiDung = “Admin” thì hiển thị thông báo “không được quyền
xóa user này”
Ngược lại hiển thị thông báo hỏi “Bạn có muốn xóa không ?”
• Nếu chọn “Yes” thì thực hiện xóa và load lại danh sách người dùng
• Ngượi lại (chọn “No”): quay lại màn hình quản lý người dùng
o Xử lý nút lệnh “Sửa”: cho phép sửa thông tin người dùng
Cho phép nhập thông trong các TextBox (trừ thông tin mã)
Disbale các nút lệnh “Thêm”, “Xóa”, “Sửa”, “Thoát”
Enable các nút lệnh “Lưu”, “Không”
o Xử lý nút lệnh “Không”:
Hủy bỏ thao tác thêm/sửa thông tin người dùng
Hiển thị thông tin người dùng đã chọn trước đó
Bài tập thực hành project 02
Ths Trần Ngọc Bảo 6/8
o Xử lý nút lệnh “Ghi”: cập nhật CSDL (thêm/sửa) thông tin người dùng và load lại
danh sách người dùng
- Nhấn vào chức năng “Quản lý học sinh\Thông tin học sinh” trong menu hoặc nút hình
“Mũ tốt nghiệp” trên ToolBar, hiển thị màn hình thông tin sinh viên.
Bài tập thực hành project 02
Ths Trần Ngọc Bảo 7/8
o Khi màn hình vừa được load, không cho phép người dùng thao tác
Các TextBox
Các nút: Ghi, Không, Thoát
o Xử lý nút lệnh “Thêm”: thêm mới học sinh
Cho phép nhập thông trong các TextBox (trừ thông tin ID)
Disbale các nút lệnh “Thêm”, “Xóa”, “Sửa”, “Thoát”
Enable các nút lệnh “Lưu”, “Không”
o Xử lý nút lệnh “Xóa”: Hiển thị thông báo hỏi “Bạn có muốn xóa không ?”
Nếu chọn “Yes” thì thực hiện xóa và load lại danh sách học sinh
Ngượi lại (chọn “No”): quay lại màn hình quản lý học sinh
o Xử lý nút lệnh “Sửa”: cho phép sửa thông tin học sinh
Cho phép nhập thông trong các TextBox (trừ thông tin ID)
Disbale các nút lệnh “Thêm”, “Xóa”, “Sửa”, “Thoát”
Enable các nút lệnh “Lưu”, “Không”
o Xử lý nút lệnh “Không”:
Hủy bỏ thao tác thêm/sửa thông tin học sinh
Hiển thị thông tin học sinh đã chọn trước đó
o Xử lý nút lệnh “Lưu”: cập nhật CSDL (thêm/sửa) thông tin học sinh và load lại
danh sách học sinh
Bài tập thực hành project 02
Ths Trần Ngọc Bảo 8/8
1.3. Sử dụng Crystal Report tạo các Report sau
- In danh sách thí sinh theo dân tộc
- In danh sách thí sinh theo tôn giáo