lOMoARcPSD| 60755984
lOMoARcPSD| 60755984
Mục lục
LỜI MỞ ĐẦU ..........................................................................................................
0
CHƯƠNG 1. GII THIỆU ....................................................................................
1
1. Gii thiệu đ tài ...............................................................................................
1
1.1. do chọn đề tài ........................................................................................ 1
1.2. Tính cấp thiết ..............................................................................................
1
1.3. Ý nghĩa khoa học thực tiễn ....................................................................
1
1.4. Mục đích nghiên cứu ...................................................................................
2
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT ........................................................................
3
2.1. Cơ sở lý thuyết của đ tài ............................................................................
3
2.1.1 Windows Form .........................................................................................
3
2.1.2 Control ......................................................................................................
3
2.1.3 Event .........................................................................................................
4
CHƯƠNG 3: THỰC NGHIỆM ..............................................................................
5
3.1. Chương trình ................................................................................................
5
3.2 Giao diện Chương trình bài 1 ......................................................................
5
3.2.1 Giao diện Bài tp 1 ................................................................................... 5
3.2.1.1 Các bước thực hiện .............................................................................
6
3.2.1.2 Yêu cầu .............................................................................................
12
3.2.2 Source code và các chức năng bài 1 ....................................................... 15
3.2.2.1 Chức năng thoát ................................................................................ 15
3.2.2.2 Chức năng tính tiền ........................................................................... 15
3.2.2.3 Chức năng in hoá đơn ....................................................................... 16
3.3.Giao diện chương trình bài 2 ....................................................................
17
3.3.1 Giao diện bài tp 2 .................................................................................. 17
3.3.1.1 Giao diện nhp các số nguyên và update vào listbox ....................... 18
3.3.1.2 Giao diện chức năng tính tổng danh sách ......................................... 19
3.3.1.3 Giao diện chức năng tính tổng số chẵn trong danh sách .................. 19
lOMoARcPSD| 60755984
3.3.1.4 Giao diện chức năng tính tổng số lẻ trong danh sách ....................... 19
3.3.1.5 Giao diện sau khi dùng chức năng tăng mỗi phần tử lên 2 .............. 19
3.3.1.6 Giao diện sau khi dùng chức năng thay bình phương ...................... 20
3.3.1.7 Giao diện khi sau khi dùng chức năng chọn số chẵn ....................... 20
3.3.1.8 Giao diện sau khi dùng chức năng chọn số lẻ .................................. 21
3.3.1.9 Giao diện sau khi dùng chức năng xoá phần tử đầu và cuối ............ 21
3.3.1.10 Giao diện sau khi dùng chức năng xoá phần tử đang chọn ............ 22
3.3.1.11 Giao diện chức năng tìm số lớn nhất .............................................. 22
3.3.1.12 Giao diện chức năng nhân mỗi phần tử cho 2 ................................ 23
3.3.1.13 Giao diện chức năng làm mới ......................................................... 23
3.3.2 Source code và các chức năng bài 2 ....................................................... 24
3.3.2.1 Chức năng update ............................................................................. 24
3.3.2.2 Chức năng tính tổng danh sách ......................................................... 24
3.3.2.3 chức năng tính tổng số chẵn ............................................................. 24
3.3.2.4 chức năng tính tổng số lẻ .................................................................. 25
3.3.2.5 chức năng tăng mỗi phần tử lên 2 ..................................................... 25
3.3.2.6 chức năng thay bình phương ............................................................ 26
3.3.2.7 chức ng chọn số chẵn .................................................................... 26
3.3.2.8 chức năng chọn số lẻ......................................................................... 26
3.3.2.9 chức năng xoá phần tử đầu và cuối .................................................. 26
3.3.2.10 chức năng xoá phần tử đang chọn .................................................. 27
3.3.2.11 chức năng tìm số lớn nhất ............................................................... 27
3.3.2.11 chức năng tìm số nhỏ nhất .............................................................. 27
3.3.2.11 chức năng nhân mỗi phần tử cho 2 ................................................. 28
3.3.2.12 chức năng làm mới ......................................................................... 28
3.3.2.13 chức năng kết thúc .......................................................................... 28
CHƯƠNG 4: THỰC NGHIỆM ............................................................................
29
4.1. Kết lun ....................................................................................................... 29
4.2. Hạn chế ....................................................................................................... 29
4.3 Hưng pht trin ........................................................................................ 30
Tài liệu tham kho ............................................................................................
30
lOMoARcPSD| 60755984
1
LỜI MỞ ĐẦU
- Lp trình Windows Form một trong những phương pháp phát triển phần
mềm phbiến nhất hiện nay. Sử dụng Windows Form, bạn thể thiết kế các ứng
dụng desktop đa dạng chuyên nghiệp. Bằng cách sử dụng các control nâng cao
được cung cấp bởi .NET Framework, bạn thể xây dựng các ứng dụng tính
tương tác cao với người dùng.
- Winform C# tạo giao diện cho các ứng dụng trên Desktop bằng ngôn
ngữ C#. Nó đi liền với nhau nhiều đến nỗi ta quen gọi tắt là lp trình Winform C#.
Các ứng dụng này phù hợp với việc quản lý thông tin từ các app trên Desktop cũng
như ứng dụng tương tác với người dùng. Hiện nay vẫn còn rất nhiều học Winform
C# đặc tính dễ học, đơn giản, nhất đối với sinh viên thường lựa chọn để làm
đồ án. Làm Winform lp trình viên được đào tạo từ cơ bản đến nâng cao về kỹ thut
sử dụng Combobox, Data table, Dataset, NumericUpdown. Từ việc tạo giao diện
cho ng dụng đến việc sử dụng các control nâng cao đtạo ra ứng dụng đa nền
tảng. Chúng ta cũng sẽ tìm hiểu cách sử dụng các control được cung cấp bởi .NET
Framework để tạo ra các ứng dụng có tính tương tác cao hơn.
lOMoARcPSD| 60755984
- vy để hiểu hơn về lp trình Windows Form các control nâng cao
được cung cấp bởi .NET Framework. Chúng em quyết định chọn đề tài nghiên cứu
“Lab04 lp trình window form với các control nâng cao”
lOMoARcPSD| 60755984
CHƯƠNG 1. GII THIU
1. Giới thiệu đề tài
1.1. Lý do chọn đề tài
- Trong thời đại công nghệ số, việc phát triển các ứng dụng desktop còn
rất quan trọng, đặc biệt các ứng dụng quản lý, hệ thống bán hàng, in hoá đơn ,...
Sử dụng các control nâng cao giúp tăng tính chuyên nghiệp và đáp ứng yêu cầu của
người dùng. Các control nâng cao cho phép chúng ta tạo ra các ng dụng giao
diện đẹp mắt, tương c với người dùng một cách tốt nhất. Điều này giúp tăng tính
chuyên nghiệp và thu hút người sử dụng.
- Tất cả các yếu tố hình ảnh trong thư viện lớp Windows Forms xuất
phát từ lớp Control. Điều này cung cấp chức năng tối thiểu của một yếu tố giao diện
người dùng như vị trí, kích thước, màu sắc,phông chữ , văn bản, cũng như các sự
kiện phổ biến như nhấp kéo / thả. Lớp Control cũng hỗ trợ lắp ghép để cho
phép kiểm soát sắp xếp lại vị trí của dưới cha mẹ của nó. Hỗ trợ khả năng truy
cp Microsoft Active trong lớp Control cũng giúp người ng bkhiếm khuyết sử
dụng Windows Forms tốt hơn.
1.2. Tính cấp thiết
- Với sự phát triển của công nghệ thông tin, nhu cầu sử dụng phần mềm
ứng dụng trên nền tảng Windows ngày càng tăng cao. Việc nghiên cứu và ứng
dụng các control nâng cao trong lp trình Windows Form sẽ giúp cho các nhà phát
triển phần mềm có thể tạo ra những sản phẩm chất lượng cao và đáp ứng tốt nhu
cầu của người dùng.
1.3. Ý nghĩa khoa học và thực tiễn
- Nghiên cứu về lp trình Windows Form và các control nâng cao là một lĩnh
vực bản trong kỹ thut phần mềm, giúp các nhà phát triển thể tạo ra phần mềm
tính tương tác cao và giao diện đẹp mắt. Áp dụng thành công các control nâng
cao trong lp trình Windows Form sẽ giúp cho các sản phẩm phần mềm trở nên đa
dạng và mang lại trải nghiệm tốt hơn cho người dùng.
lOMoARcPSD| 60755984
1.4 Mục đích nghiên cứu
- Nghiên cứu về lp trình Windows Form các control nâng cao nhằm tạo
ra các sản phẩm phần mềm tính tương tác cao đáp ứng tốt nhu cầu của người
dùng. Tìm hiểu về c control nâng cao trong lp trình Windows Form như:
NumericUpDown, Combobox, ListBox, GroupBox... Xây dựng các ng dụng thực
tế như ứng dụng tính tiền khám răng sử dụng các control nâng cao này để giúp người
dùng có được trải nghiệm tốt hơn khi sử dụng phần mềm. Đánh giá hiệu quả và tính
khả thi của việc sử dụng các control nâng cao trong lp trình Windows Form.
lOMoARcPSD| 60755984
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT
2.1. Cơ sở lý thuyết của đề tài
- Để phục vụ cho việc nghiên cứu liên quan đến đề tài ta cần nắm rõ những nội dung
như: Windows Form, Control, Event.
2.1.1 Windows Form
- Windows Form một phần trong .NET Framework của Microsoft, cho
phép lp trình viên tạo ra các ứng dụng desktop trên hệ điều hành Windows. cung
cấp một giao diện người dùng đồ họa (GUI) để hiển thị các nút bấm, textbox, menu,
hộp thoại các thành phần khác để ơng tác với người dùng. Windows Form được
xây dựng trên nền tảng Windows API sẵn trong Windows để hiển thị các thành
phần giao diện người dùng. Nó cung cấp cho các lp trình viên các công cụ để thiết
kế giao diện người dùng viết xử lý sự kiện kết hợp với nhau để tạo ra các
chương trình ứng dụng desktop trên Windows.
2.1.2 Control
- Trong Windows Form, Control là một đối tượng cơ bản được sử dụng
để hiển thị các thành phần của giao diện người dùng, chẳng hạn như nút bấm, hộp
văn bản, hình ảnh nhiều hơn nữa. Các đối tượng Control thể được thêm vào
trong Visual Studio thông qua thanh công cụ Toolbox hoặc thông qua mã. Một số
tính năng cơ bản của Control trong Windows Forms gồm:
+ Thuộc tính: Tất cả các Control trong Windows Form đều có các thuộc tính
khác nhau để điều chỉnh các tính năng của chúng. dụ, thuộc tính Text được sử
dụng để thiết lp hoặc lấy giá trị của nội dung của một Control, thuộc tính Visible
được sử dụng để thiết lp trạng thái hiển thị của một Control, vv.
+ Layout: Control trong Windows Form được sắp xếp theo các khuôn mẫu
layout khác nhau, chẳng hạn như FlowLayout, GridLayout TableLayout. c
layout này giúp định vị và tổ chức các Control trên một Form.
+ Tích hợp: Control trong Windows Form thể được tích hợp với nhau để
tạo thành giao diện người dùng phức tạp hơn, dụ như kết hợp nhiều nút bấm
lOMoARcPSD| 60755984
hộp văn bản để tạo thành một Form đăng nhp. Đây chỉ một số tính năng bản
của Control trong Windows Form.
- Việc sử dụng các Control này rất quan trọng để tạo ra các giao diện
người dùng chuyên nghiệp và tiện lợi cho người dùng.
2.1.3 Event
- Trong Windows Form, Event (hay sự kiện) là một hành động hoặc tương tác
người dùng ứng dụng thể phản hồi. Khi xảy ra một sự kiện, chẳng hạn như
nhấn một nút hoặc di chuyển chuột trên một Control, ứng dụng sẽ gọi một phương
thức định trước để xử lý sự kiện đó. Mỗi Control trong Windows Form có nhiều sự
kiện khác nhau, dụ như Click, MouseDown, KeyPress một số sự kiện khác.
Với mỗi sự kiện, bạn có thể kết nối một phương thức xử lý sự kiện (event handler)
để thiết lp các hành động được thực hiện khi sự kiện xảy ra.
Ví dụ, nếu bạn muốn bt hoặc tắt một Control khi nhấp vào một nút bấm, bạn có thể
kết nối một phương thức xử lý sự kiện với sự kiện Click của nút đó.
- Việc sử dụng event trong Windows Form rất quan trọng để tạo ra các ng
dụng phản hồi được với người dùng. Bằng cách kết nối các phương thức xử sự
kiện, bạn có thể tạo ra các hành động tùy chỉnh để phản hồi với các tương tác người
dùng khác nhau.
CHƯƠNG 3: THC NGHIM
3.1. Chương trình
Mục đích của bài báo cáo này tìm hiểu cách lp trình Windows Form với các
Control nâng cao.
Làm quen với việc sử dụng các control trên form như:
NumericUpDown: Hộp chon tăng giảm giá trị số.
Combobox: Hộp chọn 1 giá trị trong danh sách giá trị
ListBox: Danh sách các mục chọn, cho phép chọn 1 hoặc nhiều mục
GroupBox: Nhóm các đối tượng về cùng nhóm
lOMoARcPSD| 60755984
3.2 Giao diện Chương trình bài 1
3.2.1 Giao diện Bài tp 1
Tạo một ứng dụng Windows Form cơ bản tính tiền công dịch vụ tại phòng nha.
Với mỗi khách hàng, các dịch vụ cung cấp gồm: tẩy răng, cạo vôi, chụp hình
răng trám răng. Mỗi loại sẽ chi phí riêng. Cuối cùng tính tổng các chi
phí mà người khách phải trả. Lưu ý: chỉ tính tiền khi phần thông tin tên khách
hàng đã được nhp (nếu thông tin này chưa thì chương trình phát sinh
MessageBox cảnh báo).
Ứng dụng có giao diện đơn giản như hình 1 bên dưới.
Hình 1: Giao diện chính của ứng dụng bài 1
3.2.1.1 Các bước thực hiện
Tạo ứng dựng Windows Form có tên DentalPaymentApp
lOMoARcPSD| 60755984
Hình 2: Tạo ứng dụng Windows Form
Sau khi hoàn tất các bước trên VS.NET sẽ phát sinh ra một project Windows Form
mẫu, cho phép người lp trình bắt đầu xây dựng các ứng dụng. Giao diện của
VS.NET cho ứng dụng vừa tạo có dạng như hình 3 bên dưới.
2.
Ch
n
lo
i
ng
d
ng
cho
Project
1.
Ch
n
ngôn
ng
l
p
trình
3.
Đ
t
tên
Project
5.
Đ
ng
ý
t
o
Project
4.
Ch
n
v
trí
lưu
Project
lOMoARcPSD| 60755984
Hình 3: Màn hình VS. NET phục vụ cho việc tạo project Windows Form
Bảng 1: Mô tả các control trên form
STT
Name
Control
Thiết lp các thuộc tính cho control
1
lblTitle
Label
Text = “Dental Payment Form”, Font =
“Impact, Size = 17”, ForeColor = Blue
2
lblName
Label
Text = “Tên khách hàng”
3
txtName
TextBox
4
chkCaovoi
CheckBox
Text = “Cạo vôi”
5
lblCaovoi
Label
Text=”$100000”
6
chkTaytrang
CheckBox
Text=”Tẩy trắng”
7
lblCaovoi
Label
Text=”$1200000”
8
chkChuphinhrang
CheckBox
Text=”Chụp hình răng”
9
lblChuphinhrang
Label
Text=”$200000”
10
lblTramrang
Label
Text=”Trám răng”
11
numFilling
NumericUpDown
lOMoARcPSD| 60755984
12
lblFillCost
Label
Text=”$80000”
13
lblTotal
Label
Text=”Total”
14
txtTotal
TextBox
Enable = False
15
btnThoat
Button
Text=”Thoát”
16
btnTinhTien
Button
Text=”Tính tiền”
17
btnInhoadon
Button
Text=”In hoá đơn”
Hình 4: Giao diện của Form bài tp 2
lOMoARcPSD| 60755984
Hình 5: Minh họa việc đổi tên của TextBox trên Form
Hình 6: Minh họa cách kích đúp vào button để tạo event handler
lOMoARcPSD| 60755984
Hình 7: Minh họa các bước khai báo event handler từ cửa sổ properties của button
3.2.1.2 Yêu cầu
- Tạo chức năng tính tiền, chức năng này được kích hoạt khi button “Tính
tiền” được chọn.
tả chức năng Tính tiền như sau (Tinhtien() phương thức thành viên của lớp
Form chính:
+ Kiểm tra xem tên khách hàng có được nhp hay không?
+ Nếu chưa: xuất thông báo, yêu cầu nhp tên khách.
+ Đã nhp: thực hiện các bước sau
Total = 0
If (cạo vôi) Total += 500.000
If ( tẩy trắng) Total += 900.000
lOMoARcPSD| 60755984
If ( chụp hình răng) Total
+=200000 Total
+= (số răng
trám)*80000 Xuất s
tiền ra TextBox
txtTotal
Tạo trình xửsự kiện cho button btnCalc rồi trong trình xử sự kiện này
gọi chức năng GetPay.
Tờng hợp không nhp tên khách hàng: phát sinh message box cảnh báo
Hình 8: Không tính tiền khi chưa nhp tên khách hàng
Màn hình sau khi tính tiền cho khách
lOMoARcPSD| 60755984
Hình 9: Màn hình tính tiền cho khách
Màn hình in hoá đơn cho khách
Hình 10: Màn hình in hoá đơn cho khách
3.2.2 Source code và các chức năng bài 1
lOMoARcPSD| 60755984
3.2.2.1 Chức năng thoát
3.2.2.2 Chức năng tính tiền
lOMoARcPSD| 60755984
3.2.2.3 Chức năng in hoá đơn

Preview text:

lOMoAR cPSD| 60755984 lOMoAR cPSD| 60755984 Mục lục
LỜI MỞ ĐẦU .......................................................................................................... 0
CHƯƠNG 1. GIỚI THIỆU .................................................................................... 1
1. Giới thiệu đề tài ............................................................................................... 1
1.1. Lý do chọn đề tài ........................................................................................ 1
1.2. Tính cấp thiết .............................................................................................. 1
1.3. Ý nghĩa khoa học và thực tiễn .................................................................... 1
1.4. Mục đích nghiên cứu ................................................................................... 2
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT ........................................................................ 3
2.1. Cơ sở lý thuyết của đề tài ............................................................................ 3
2.1.1 Windows Form ......................................................................................... 3
2.1.2 Control ...................................................................................................... 3
2.1.3 Event ......................................................................................................... 4
CHƯƠNG 3: THỰC NGHIỆM .............................................................................. 5
3.1. Chương trình ................................................................................................ 5
3.2 Giao diện Chương trình bài 1 ...................................................................... 5
3.2.1 Giao diện Bài tập 1 ................................................................................... 5
3.2.1.1 Các bước thực hiện ............................................................................. 6
3.2.1.2 Yêu cầu ............................................................................................. 12
3.2.2 Source code và các chức năng bài 1 ....................................................... 15
3.2.2.1 Chức năng thoát ................................................................................ 15
3.2.2.2 Chức năng tính tiền ........................................................................... 15
3.2.2.3 Chức năng in hoá đơn ....................................................................... 16
3.3.Giao diện chương trình bài 2 .................................................................... 17
3.3.1 Giao diện bài tập 2 .................................................................................. 17
3.3.1.1 Giao diện nhập các số nguyên và update vào listbox ....................... 18
3.3.1.2 Giao diện chức năng tính tổng danh sách ......................................... 19
3.3.1.3 Giao diện chức năng tính tổng số chẵn trong danh sách .................. 19 lOMoAR cPSD| 60755984
3.3.1.4 Giao diện chức năng tính tổng số lẻ trong danh sách ....................... 19
3.3.1.5 Giao diện sau khi dùng chức năng tăng mỗi phần tử lên 2 .............. 19
3.3.1.6 Giao diện sau khi dùng chức năng thay bình phương ...................... 20
3.3.1.7 Giao diện khi sau khi dùng chức năng chọn số chẵn ....................... 20
3.3.1.8 Giao diện sau khi dùng chức năng chọn số lẻ .................................. 21
3.3.1.9 Giao diện sau khi dùng chức năng xoá phần tử đầu và cuối ............ 21
3.3.1.10 Giao diện sau khi dùng chức năng xoá phần tử đang chọn ............ 22
3.3.1.11 Giao diện chức năng tìm số lớn nhất .............................................. 22
3.3.1.12 Giao diện chức năng nhân mỗi phần tử cho 2 ................................ 23
3.3.1.13 Giao diện chức năng làm mới ......................................................... 23
3.3.2 Source code và các chức năng bài 2 ....................................................... 24
3.3.2.1 Chức năng update ............................................................................. 24
3.3.2.2 Chức năng tính tổng danh sách ......................................................... 24
3.3.2.3 chức năng tính tổng số chẵn ............................................................. 24
3.3.2.4 chức năng tính tổng số lẻ .................................................................. 25
3.3.2.5 chức năng tăng mỗi phần tử lên 2 ..................................................... 25
3.3.2.6 chức năng thay bình phương ............................................................ 26
3.3.2.7 chức năng chọn số chẵn .................................................................... 26
3.3.2.8 chức năng chọn số lẻ......................................................................... 26
3.3.2.9 chức năng xoá phần tử đầu và cuối .................................................. 26
3.3.2.10 chức năng xoá phần tử đang chọn .................................................. 27
3.3.2.11 chức năng tìm số lớn nhất ............................................................... 27
3.3.2.11 chức năng tìm số nhỏ nhất .............................................................. 27
3.3.2.11 chức năng nhân mỗi phần tử cho 2 ................................................. 28
3.3.2.12 chức năng làm mới ......................................................................... 28
3.3.2.13 chức năng kết thúc .......................................................................... 28
CHƯƠNG 4: THỰC NGHIỆM ............................................................................ 29
4.1. Kết luận ....................................................................................................... 29
4.2. Hạn chế ....................................................................................................... 29
4.3 Hướng phát triển ........................................................................................ 30
Tài liệu tham khảo ............................................................................................ 30 lOMoAR cPSD| 60755984 1 LỜI MỞ ĐẦU
- Lập trình Windows Form là một trong những phương pháp phát triển phần
mềm phổ biến nhất hiện nay. Sử dụng Windows Form, bạn có thể thiết kế các ứng
dụng desktop đa dạng và chuyên nghiệp. Bằng cách sử dụng các control nâng cao
được cung cấp bởi .NET Framework, bạn có thể xây dựng các ứng dụng có tính
tương tác cao với người dùng.
- Winform C# là tạo giao diện cho các ứng dụng trên Desktop bằng ngôn
ngữ C#. Nó đi liền với nhau nhiều đến nỗi ta quen gọi tắt là lập trình Winform C#.
Các ứng dụng này phù hợp với việc quản lý thông tin từ các app trên Desktop cũng
như ứng dụng tương tác với người dùng. Hiện nay vẫn còn rất nhiều học Winform
C# vì đặc tính dễ học, đơn giản, nhất là đối với sinh viên thường lựa chọn để làm
đồ án. Làm Winform lập trình viên được đào tạo từ cơ bản đến nâng cao về kỹ thuật
sử dụng Combobox, Data table, Dataset, NumericUpdown. Từ việc tạo giao diện
cho ứng dụng đến việc sử dụng các control nâng cao để tạo ra ứng dụng đa nền
tảng. Chúng ta cũng sẽ tìm hiểu cách sử dụng các control được cung cấp bởi .NET
Framework để tạo ra các ứng dụng có tính tương tác cao hơn. lOMoAR cPSD| 60755984
- Vì vậy để hiểu rõ hơn về lập trình Windows Form và các control nâng cao
được cung cấp bởi .NET Framework. Chúng em quyết định chọn đề tài nghiên cứu
“Lab04 lập trình window form với các control nâng cao” lOMoAR cPSD| 60755984
CHƯƠNG 1. GIỚI THIỆU
1. Giới thiệu đề tài
1.1. Lý do chọn đề tài -
Trong thời đại công nghệ số, việc phát triển các ứng dụng desktop còn
rất quan trọng, đặc biệt là các ứng dụng quản lý, hệ thống bán hàng, in hoá đơn ,...
Sử dụng các control nâng cao giúp tăng tính chuyên nghiệp và đáp ứng yêu cầu của
người dùng. Các control nâng cao cho phép chúng ta tạo ra các ứng dụng có giao
diện đẹp mắt, tương tác với người dùng một cách tốt nhất. Điều này giúp tăng tính
chuyên nghiệp và thu hút người sử dụng. -
Tất cả các yếu tố hình ảnh trong thư viện lớp Windows Forms xuất
phát từ lớp Control. Điều này cung cấp chức năng tối thiểu của một yếu tố giao diện
người dùng như vị trí, kích thước, màu sắc,phông chữ , văn bản, cũng như các sự
kiện phổ biến như nhấp và kéo / thả. Lớp Control cũng có hỗ trợ lắp ghép để cho
phép kiểm soát sắp xếp lại vị trí của nó dưới cha mẹ của nó. Hỗ trợ khả năng truy
cập Microsoft Active trong lớp Control cũng giúp người dùng bị khiếm khuyết sử
dụng Windows Forms tốt hơn.
1.2. Tính cấp thiết
- Với sự phát triển của công nghệ thông tin, nhu cầu sử dụng phần mềm
ứng dụng trên nền tảng Windows ngày càng tăng cao. Việc nghiên cứu và ứng
dụng các control nâng cao trong lập trình Windows Form sẽ giúp cho các nhà phát
triển phần mềm có thể tạo ra những sản phẩm chất lượng cao và đáp ứng tốt nhu cầu của người dùng.
1.3. Ý nghĩa khoa học và thực tiễn
- Nghiên cứu về lập trình Windows Form và các control nâng cao là một lĩnh
vực cơ bản trong kỹ thuật phần mềm, giúp các nhà phát triển có thể tạo ra phần mềm
có tính tương tác cao và giao diện đẹp mắt. Áp dụng thành công các control nâng
cao trong lập trình Windows Form sẽ giúp cho các sản phẩm phần mềm trở nên đa
dạng và mang lại trải nghiệm tốt hơn cho người dùng. lOMoAR cPSD| 60755984
1.4 Mục đích nghiên cứu
- Nghiên cứu về lập trình Windows Form và các control nâng cao nhằm tạo
ra các sản phẩm phần mềm có tính tương tác cao và đáp ứng tốt nhu cầu của người
dùng. Tìm hiểu về các control nâng cao trong lập trình Windows Form như:
NumericUpDown, Combobox, ListBox, GroupBox... Xây dựng các ứng dụng thực
tế như ứng dụng tính tiền khám răng sử dụng các control nâng cao này để giúp người
dùng có được trải nghiệm tốt hơn khi sử dụng phần mềm. Đánh giá hiệu quả và tính
khả thi của việc sử dụng các control nâng cao trong lập trình Windows Form. lOMoAR cPSD| 60755984
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT
2.1. Cơ sở lý thuyết của đề tài
- Để phục vụ cho việc nghiên cứu liên quan đến đề tài ta cần nắm rõ những nội dung
như: Windows Form, Control, Event. 2.1.1 Windows Form
- Windows Form là một phần trong .NET Framework của Microsoft, cho
phép lập trình viên tạo ra các ứng dụng desktop trên hệ điều hành Windows. Nó cung
cấp một giao diện người dùng đồ họa (GUI) để hiển thị các nút bấm, textbox, menu,
hộp thoại và các thành phần khác để tương tác với người dùng. Windows Form được
xây dựng trên nền tảng Windows API có sẵn trong Windows để hiển thị các thành
phần giao diện người dùng. Nó cung cấp cho các lập trình viên các công cụ để thiết
kế giao diện người dùng và viết mã xử lý sự kiện kết hợp với nhau để tạo ra các
chương trình ứng dụng desktop trên Windows. 2.1.2 Control -
Trong Windows Form, Control là một đối tượng cơ bản được sử dụng
để hiển thị các thành phần của giao diện người dùng, chẳng hạn như nút bấm, hộp
văn bản, hình ảnh và nhiều hơn nữa. Các đối tượng Control có thể được thêm vào
trong Visual Studio thông qua thanh công cụ Toolbox hoặc thông qua mã. Một số
tính năng cơ bản của Control trong Windows Forms gồm:
+ Thuộc tính: Tất cả các Control trong Windows Form đều có các thuộc tính
khác nhau để điều chỉnh các tính năng của chúng. Ví dụ, thuộc tính Text được sử
dụng để thiết lập hoặc lấy giá trị của nội dung của một Control, thuộc tính Visible
được sử dụng để thiết lập trạng thái hiển thị của một Control, vv.
+ Layout: Control trong Windows Form được sắp xếp theo các khuôn mẫu
layout khác nhau, chẳng hạn như FlowLayout, GridLayout và TableLayout. Các
layout này giúp định vị và tổ chức các Control trên một Form.
+ Tích hợp: Control trong Windows Form có thể được tích hợp với nhau để
tạo thành giao diện người dùng phức tạp hơn, ví dụ như kết hợp nhiều nút bấm và lOMoAR cPSD| 60755984
hộp văn bản để tạo thành một Form đăng nhập. Đây chỉ là một số tính năng cơ bản
của Control trong Windows Form. -
Việc sử dụng các Control này rất quan trọng để tạo ra các giao diện
người dùng chuyên nghiệp và tiện lợi cho người dùng. 2.1.3 Event -
Trong Windows Form, Event (hay sự kiện) là một hành động hoặc tương tác
người dùng mà ứng dụng có thể phản hồi. Khi xảy ra một sự kiện, chẳng hạn như
nhấn một nút hoặc di chuyển chuột trên một Control, ứng dụng sẽ gọi một phương
thức định trước để xử lý sự kiện đó. Mỗi Control trong Windows Form có nhiều sự
kiện khác nhau, ví dụ như Click, MouseDown, KeyPress và một số sự kiện khác.
Với mỗi sự kiện, bạn có thể kết nối một phương thức xử lý sự kiện (event handler)
để thiết lập các hành động được thực hiện khi sự kiện xảy ra.
Ví dụ, nếu bạn muốn bật hoặc tắt một Control khi nhấp vào một nút bấm, bạn có thể
kết nối một phương thức xử lý sự kiện với sự kiện Click của nút đó. -
Việc sử dụng event trong Windows Form rất quan trọng để tạo ra các ứng
dụng phản hồi được với người dùng. Bằng cách kết nối các phương thức xử lý sự
kiện, bạn có thể tạo ra các hành động tùy chỉnh để phản hồi với các tương tác người dùng khác nhau.
CHƯƠNG 3: THỰC NGHIỆM
3.1. Chương trình
Mục đích của bài báo cáo này là tìm hiểu cách lập trình Windows Form với các Control nâng cao.
Làm quen với việc sử dụng các control trên form như:
▪ NumericUpDown: Hộp chon tăng giảm giá trị số.
▪ Combobox: Hộp chọn 1 giá trị trong danh sách giá trị
▪ ListBox: Danh sách các mục chọn, cho phép chọn 1 hoặc nhiều mục
▪ GroupBox: Nhóm các đối tượng về cùng nhóm lOMoAR cPSD| 60755984
3.2 Giao diện Chương trình bài 1
3.2.1 Giao diện Bài tập 1
• Tạo một ứng dụng Windows Form cơ bản tính tiền công dịch vụ tại phòng nha.
• Với mỗi khách hàng, các dịch vụ cung cấp gồm: tẩy răng, cạo vôi, chụp hình
răng và trám răng. Mỗi loại sẽ có chi phí riêng. Cuối cùng tính tổng các chi
phí mà người khách phải trả. Lưu ý: chỉ tính tiền khi phần thông tin tên khách
hàng đã được nhập (nếu thông tin này chưa có thì chương trình phát sinh MessageBox cảnh báo).
• Ứng dụng có giao diện đơn giản như hình 1 bên dưới.
Hình 1: Giao diện chính của ứng dụng bài 1
3.2.1.1 Các bước thực hiện
Tạo ứng dựng Windows Form có tên DentalPaymentApp lOMoAR cPSD| 60755984
2. Ch n lo i ng d ng cho Project
1. Ch n ngôn ng lậ p trình
3. Đ t tên Project
4. Ch n v trí lưu Project
5. Đ ng ý t o Project
Hình 2: Tạo ứng dụng Windows Form
Sau khi hoàn tất các bước trên VS.NET sẽ phát sinh ra một project Windows Form
mẫu, cho phép người lập trình bắt đầu xây dựng các ứng dụng. Giao diện của
VS.NET cho ứng dụng vừa tạo có dạng như hình 3 bên dưới. lOMoAR cPSD| 60755984
Hình 3: Màn hình VS. NET phục vụ cho việc tạo project Windows Form
Bảng 1: Mô tả các control trên form STT Name Control
Thiết lập các thuộc tính cho control 1 lblTitle Label
Text = “Dental Payment Form”, Font =
“Impact, Size = 17”, ForeColor = Blue 2 lblName Label
Text = “Tên khách hàng” 3 txtName TextBox 4 chkCaovoi CheckBox Text = “Cạo vôi” 5 lblCaovoi Label Text=”$100000” 6 chkTaytrang CheckBox Text=”Tẩy trắng” 7 lblCaovoi Label Text=”$1200000” 8 chkChuphinhrang CheckBox Text=”Chụp hình răng” 9 lblChuphinhrang Label Text=”$200000” 10 lblTramrang Label Text=”Trám răng” 11 numFilling NumericUpDown lOMoAR cPSD| 60755984 12 lblFillCost Label Text=”$80000” 13 lblTotal Label Text=”Total” 14 txtTotal TextBox Enable = False 15 btnThoat Button Text=”Thoát” 16 btnTinhTien Button Text=”Tính tiền” 17 btnInhoadon Button Text=”In hoá đơn”
Hình 4: Giao diện của Form bài tập 2 lOMoAR cPSD| 60755984
Hình 5: Minh họa việc đổi tên của TextBox trên Form
Hình 6: Minh họa cách kích đúp vào button để tạo event handler lOMoAR cPSD| 60755984
Hình 7: Minh họa các bước khai báo event handler từ cửa sổ properties của button 3.2.1.2 Yêu cầu
- Tạo chức năng tính tiền, chức năng này được kích hoạt khi button “Tính tiền” được chọn.
Mô tả chức năng Tính tiền như sau (Tinhtien() là phương thức thành viên của lớp Form chính:
+ Kiểm tra xem tên khách hàng có được nhập hay không?
+ Nếu chưa: xuất thông báo, yêu cầu nhập tên khách.
+ Đã nhập: thực hiện các bước sau Total = 0
If (cạo vôi) Total += 500.000
If ( tẩy trắng) Total += 900.000 lOMoAR cPSD| 60755984
If ( chụp hình răng) Total +=200000 Total += (số răng trám)*80000 Xuất số tiền ra TextBox txtTotal
Tạo trình xử lý sự kiện cho button btnCalc rồi trong trình xử lý sự kiện này gọi chức năng GetPay.
• Trường hợp không nhập tên khách hàng: phát sinh message box cảnh báo
• Hình 8: Không tính tiền khi chưa nhập tên khách hàng
Màn hình sau khi tính tiền cho khách lOMoAR cPSD| 60755984
Hình 9: Màn hình tính tiền cho khách
Màn hình in hoá đơn cho khách
Hình 10: Màn hình in hoá đơn cho khách
3.2.2 Source code và các chức năng bài 1 lOMoAR cPSD| 60755984
3.2.2.1 Chức năng thoát
3.2.2.2 Chức năng tính tiền lOMoAR cPSD| 60755984
3.2.2.3 Chức năng in hoá đơn