TRƯỜNG ĐẠI HỌC HỒNG ĐỨC KHOA CÔNG NGHỆ THÔNG TIN VÀ TRÙN THƠNG
BÀI THỰC HÀNH
HỌC PHẦN: LẬP TRÌNH TRỰC QUAN SỚ TÍN CHỈ: 3 DÙNG CHO: SINH VIÊN NGÀNH CNTT NGƯỜI BIÊN SOẠN: NGUYỄN THỊ BÍCH NHẬT
THANH HÓA, 9/2021
HƯỚNG DẪN CHUNG
I. CHÍNH SÁCH CỦA MÔN HỌC −
Sinh viên "bắt buộc" phải in bài thực hành và mang theo khi đến buổi thực hành. Không chấp nhận cho sinh viên vào lớp nếu không có bài thực hành. Sinh viên vắng 1 (một) buổi thực hành sẽ bị đánh vắng tương đương 05 (năm) tiết học.
−
Sinh viên phải mang thêm bài giảng lý thuyết, tài liệu tham khảo của học phần.
+ Các bài tập thực hành trong học phần này được xây dựng thực hành với ngôn ngữ c# trên bộ công cụ Visual Studio (Visual Studio phiên bản 2013 hoặc 2015 hoặc 2017 hoặc 2019) + Yêu cầu phần cứng, phần mềm liên quan khi cài đặt: −
CPU: Dual Core 1.8 GHz trở lên
−
RAM: Tối thiểu 2 GB, đề nghị 4 GB, nếu chạy trên máy ảo cần tối thiểu 2.5 GB
−
HDD: 1 GB đến 40 GB, phụ tḥc vào các tính năng được cài đặt
−
Card video hỗ trợ màn hình hiển thị tới thiểu 720 (1280 x 720). Visual Studio làm việc tốt nhất ở độ phân giải WXGA (1366 x 768) trở lên.
III. TÀI LIỆU THAM KHẢO [2] [3] /> 1
Bài thực hành số 1
(5 tiết) ✓ Mục tiêu
− Tạo được dự án WPF. − Tạo các dự án với từng loại layout khác nhau. − Biết cách tạo các điều khiển cơ bản. − Biết cách thay đởi các tḥc tính phở biến của từng loại điều khiển cơ bản. ✓ Nội dung thực hành − Tạo dự án WPF trên bộ công cụ Microsoft Visual Studio. − Sử dụng các điều khiển cơ bản, các loại layout trong WPF Bài 1: Khởi động VisualStudio, tạo project, sử dụng các control cơ bản: +
TextBlock control
+
TextBlock control - Inline formatting
+
Label control
+
TextBox control
+
Button control
+
CheckBox control
+
RadioButton control
+
PasswordBox control
+ Image control Hướng dẫn tạo project Hello World:
1. File > New > Project menu option.
•
Hộp thoại sau sẽ được hiển thị.
2
•
trong Mẫu, chọn Visual C # và trong bảng giữa, chọn Ứng dụng WPF.
•
Đặt tên cho dự án. Gõ HelloWorld trong lĩnh vực tên và nhấp vào nút OK.
•
Theo mặc định, hai tệp được tạo, một là tệp XAML (mainwindow.xaml) và tệp cịn lại là tệp CS (mainwindow.cs)
•
Trên mainwindow.xaml, bạn sẽ thấy hai cửa sổ phụ, một là cửa sổ thiết kế và một là cửa sổ nguồn (XAML).
•
Trong ứng dụng WPF, có hai cách để thiết kế giao diện người dùng cho ứng dụng của bạn. Một là chỉ cần kéo và thả các thành phần UI từ hộp công cụ vào Cửa sổ thiết kế. Cách thứ hai là thiết kế giao diện người dùng của bạn bằng cách viết các thẻ XAML cho các thành phần UI. Visual Studio xử lý các thẻ XAML khi tính năng kéo và thả được sử dụng để thiết kế UI.
•
Trong tệp mainwindow.xaml, các thẻ XAML sau đây được ghi theo mặc định.
Khi đoạn mã trên được biên dịch và thực thi, bạn sẽ thấy cửa sổ sau.
Bài 2: Xây dựng form có chứa các điều khiển cơ bản của wpf sử dụng một số tḥc tính và sự kiện cơ bản(mầu chữ, font chữ, icon kèm theo, click chuột, text change….) a. TextBlock:
5
b. Label:
c. Button:
6
d. Checkbox
e. RadioButton
f. password box
g. image, menu, combobox, listbox …. (tự tìm hiểu thêm)
7
Bài 3: Xây dựng form với các dạng layout cho ứng dụng có các điều khiển cơ bản -
Bài 4: Tạo dự án WPF trên bộ công cụ Visual Studio, thao tác với các điều khiển (control) cơ bản của WPF: Label (nhãn), TextBox (Hộp soạn thảo), Button (Nút bấm), CheckBox (Hộp chọn), RadioButtom (Lựa chọn), ListBox, ComboBox (lựa chọn danh sách)… 1. Thiết kế giao diện như hình. Khi nhấn chọn vào phép tính nào thì sẽ hiện kết quả thơng báo có thơng tin: họ và tên, giới tính, Q qn, chọn mơn học.
9
u cầu: - Nếu chưa nhập họ tên sẽ có thơng báo - Giới tính chỉ có thể chọn Nam hoặc nữ. - Khi Click vào xem thông tin sẽ hiển thị các thông tin được nhập vào - Khi Click vào Nhập lại sẽ reset các điều khiển về trạng thái ban đầu
2. Thiết kế giao diện như hình dưới.
Yêu cầu: sử dụng kỹ thuật binding Khi nhập văn bản vào ơ text phía trên phía dưới hiển thị ngay văn bản đang nhập
Kéo thay đổi slider chỉ số của ô text sẽ thay đổi theo (Xem demo mẫu khi thực hành) 3. Thiết kế giao diện như hình. Khi nhấn chọn thu gọn chữ sẽ thu gọn ẩn.
10
Bài thực hành số 2
(5 tiết) ✓ Mục tiêu −
Kết hợp được các điều khiển cơ bản và nâng cao để xây dựng ứng dụng trên bộ công cụ Microsoft Visual Studio.
−
Biết cách thay đởi các tḥc tính phở biến đới với từng loại điều khiển.
Xây dựng ứng dụng kết hợp các điều khiển cơ bản và nâng cao.
1. Thiết kế giao diện như hình. Khi nhấn chọn vào phép tính nào thì sẽ hiện kết quả của phép tính đó vào ô Kết quả.
Yêu cầu: Trước khi tính cần kiểm tra dữ liệu nhập phải là số, nếu chưa nhập số vào phải có thơng báo.
Ví dụ mẫu code xử lý chỉ nhập số
Mẫu code xử lý các radio button Phép cộng:
11
Hàm xử lý phép tính:
12
2. Thiết kế chương trình hiện thực bài tốn giải phương trình bậc 2: Yêu cầu: - Khi form hiện lên thì nút Giải và nút Xóa bị mờ (Enabled=false). Nếu dữ liệu nhập khơng hợp lệ thì thơng báo lỗi. Sau khi nhập dữ liệu hợp lệ và đầy đủ thì nút Giải có tác dụng (Enabled=true). - Khi nhấn nút kết quả: tính nghiệm phương trình (xét tất cả các trường hợp xảy ra: PT có 1 nghiệm, vơ nghiệm, vơ sớ nghiệm) và hiện kết quả vào Nghiệm PT. Khi đó nút Xóa có tác dụng, nút Tính bị mờ. - Khi nhấn nút Xóa: xóa các Textbox và Label, đặt con trỏ vào Textbox A, nút Xóa bị mờ - Khi nhấn nút Thốt: xác nhận người dùng có chắc chắn thốt khỏi ứng dụng hay khơng?
Ví dụ ẩn button kết quả:
13
3: Thiết kế giao diện như hình sau:
Yêu cầu: - Khi chương trình hiện lên: ✓ Radiobutton black được chọn mặc định (đổi màu chữ ô lblLapTrinhvà ô txtNhapten) ✓ Con trỏ văn bản xuất hiện ngay tại ô txtNhapten. - Khi gõ vào ô txtNhapten thì Label lblLapTrinhchạy song song cùng nội dung. - Nhấn nút "Thốt" hoặc Esc thì thoát chương trình. - Nhấn Radiobutton Red, Green, Blue, Black thì đởi màu chữ tương ứng trong ô lblLapTrinhvà ô txtNhapten. - Nhấn các checkbox chữ đậm, nghiêng, gạch chân thì đởi style chữ trong ơ lblLapTrinhvà ô txtNhapten tương ứng. 4: Viết chương trình hiển thị lá cờ tương ứng với nước được chọn trên Radio Button tương ứng.
14
5. Viết chương trình cho phép sinh viên đăng ký học các môn học trong học kỳ: Yêu cầu: - Khi Form hiện lên, các ô nhập đều để trống. - Nút Đăng ký: Hiển thị các thông tin mà sinh viên đã đăng ký lên Messagebox như hình:
- Nút Hủy: trả lại trạng thái ban đầu của Form. - Nút Thoát: thoát khỏi ứng dụng. - Foreach(Checkbox chb in lstMonhoc.Items)
{ If (chb.IsChecked==true) { Str+=…..+chb.Content; } } -
15
6. Thiết kế giao diện như sau:
Yêu cầu: - Khi Form vừa hiện lên, các Textbox, Listbox để trống, con trỏ đặt tại Textbox. - Khi người sử dụng nhập một số vào Textbox rồi Enter hoặc nhấn nút "Nhập" thì sớ đó được thêm vào Listbox, đồng thời nội dung trong Textbox bị xóa và con trỏ được chuyển về Textbox. - Người dùng nhấn vào nút nào thì thực hiện chức năng tương ứng của nút đó. Hiện kết quả ra Messagebox (nếu có). - Thiết lập MinimumSize cho form. - Thêm vào giao diện 1 combobox Lớp, trong đó có 2 lớp: Lớp A, Lớp B, theo đó người sử dụng có thể chọn lớp để cập nhật sinh viên vào lớp mong muốn. Foreach(Checkbox chb in lstM 7. Viết chương trình nhập danh sách sinh viên theo yêu cầu sau:
Yêu cầu: - Quy định Form hiển thị giữa màn hình. Khơng cho người sử dụng thay đởi kích thước Form. - Quy định việc di chuyển tab hợp lý. - Các Listbox được phép chọn nhiều mục (kết hợp giữa phím Shift, Ctrl và cḥt) 16
- Khi người dùng nhập Họ và tên của sinh viên vào Textbox, click nút Cập Nhật (hoặc Enter) thì tên sinh viên đó sẽ được đưa vào danh sách lớp A (không chấp nhận dữ liệu rỗng). -
,
chuyển các tên đang chọn từ Lisxtbox trái sang Listbox phải và ngược lại.
-
,
chuyển hết tồn bợ các tên từ Listbox trái sang Listbox phải và ngược lại.
- Nút Xóa: cho phép xóa các tên đang chọn trong danh sách lớp A.
17
Bài thực hành số 3
(5 tiết) ✓ Mục tiêu − Tạo được dự án WPF. − Biết cách khai báo, viết hàm bắt các sBự kiện điều khiển của chuột. − Biết cách khai báo, viết hàm bắt các sự kiện điều khiển của bàn phím .. ✓ Nợi dung thực hành − Tạo dự án WPF trên bộ công cụ Microsoft Visual Studio.
− Xử lý sự kiện với cḥt và bàn phím. Bài 1: Xây dựng menu và dialog Tạo window form có tab như sau:
Yêu cầu: Tab tạo menu có các điều khiển: Menu, textbox … -
Menu chính có các mục File, Edit, View, Help ….
-
Menu File chứa các menu cấp con ví dụ: New, Open, save, Quit ….. o
Nếu chọn menu New sẽ mở text để nhập văn bản
o
Nếu chọn menu Open thì hiển thị hợp thoại OpenFileDialog đọc 1 file text nào đó
o
Nếu chọn menu Save thì hiển thị hộp thoại SaveFileDialog và lưu thành file – mặc định .txt
o
Nếu chọn menu Quit thì đóng ứng dụng.
-
Menu edit có các menu cấp con như undo, redo, Cut, copy, paste…
-
Menu Help có menu con About …
Tab nhập danh sách cho listbox có các điều khiển: button, textbox, listbox - Khi nhập tên môn học vào ô textbox bấm vào button thêm môn học vào danh sách sẽ thêm vào listbox danh sách mơn học, trường hợp chưa nhập sẽ có thông báo yêu cầu nhập tên môn học
18
Hướng dẫn: với tab tạo menu Tạo menu mức 1:
Tạo menu mức 2 (menu con)
Hàm xử lý:
Hướng dẫn: với tab nhập danh sách cho listbox
19
Bài 2: Ứng dụng các loại Dialog Tạo form có giao diện như sau
Hướng dẫn:
Tham khảo code mẫu sử dụng các loại layout để xây dựng form ()
20
NewWindow newWin = new NewWindow(); newWin.WindowStartupLocation = WindowStartupLocation.CenterOwner; newWin.ShowDialog();
Yêu cầu: khi bấm button Chọn tập tin .txt sẽ đọc nội dung text trong file được mở