Bài giảng Kỹ thuật lập trình C - Chương 3: Windows Form cung cấp cho người họ các kiến thức: Khái niệm và ứng dụng của Windows Form, môi trường thiết kế và xử lý sự kiện của Form, các control phổ biến trong Form. Mời các bạn cùng tham khảo nội dung chi tiết.
Trang 1Œ.-, Đại Học Quốc Gia TP.HCM \>=7 Đại Học Kinh Tế Luật
Trang 2@.- Đại Học Quốc Gia TP.HCM
Nội dung
* Khai niém va Ung dUng cua Windows Form?
*- Môi trường thiết kể và xứ lý sự kiện của Form
*- Các control phổ biến trong Form:
*_ Cách tạo control va gán sự kiện lic Runtime
Trang 3Ấrị Đại Học Quốc Gia TP.HCM
==) Đại Học Kinh Tế Luật
© Mau Den
di en ta mot C ách Thanh tien
thu a n tl en và linh Tinh | | Tiep | | Thong ke | | Ket thuc
Thong ke
Tong so khach hang mua xe den
Tong doanh thu
Trang 4Ấrị¡ Đại Học Quốc Gia TP.HCM = Dai Học Kinh Tế Luật
Các ứng dung cua Windows Form
**Tạo những ứng dụng với giao diện đồ hoạ
giao tiếp với người dùng
= Hién thi thong tin
“ Nhận thông tin nhập từ người dùng
“ Phản ứng với nhỮng hoạt đỘng của người dùng (nhấn chuột, gõ phím )
" KẾt nối qua mang
Trang 5Ấrị¡ Đại Học Quốc Gia TP.HCM = Dai Học Kinh Tế Luật
Các ứng dung cua Windows Form
* Phần mềm văn phòng Microsoft Office
* Phan mém quan ly du dn MS Project
* Phan mém lap trinh Visual Studio
: Các loại phần mềm tương tác khác
Trang 6
Ấrị Đại Học Quốc Gia TP.HCM
==) Đại Học Kinh Tế Luật
Môi trường thiết kế
Để tạo ưng dụng Windows Form trong Visual Studio, chu ng ta vao menu FILE, chon New Project, chon Template la Windows
b Recent | NET Framework 4.5 xi Sort by: | Default xi aa Search Installed Templates (Ctri+E) P+
ar Class Library (Portable) Visual C+ v
Click here to go online and find templates
Name: WindowsFormsApplication1 Location: |F:\DaiHocKinhTeLuat\2016\Ky Thuat Lap Trinh\Coding\CodingKhoa2016 vị Browse
| OK || Cancel |
Trang 7
¡Đại Học Quốc Gia TP.HCM
7 Đại Học Kinh Tế Luật
Môi trường thiết kế
thié’t ké’ form, 6 chi’nh
ø1ưa man hinh Cũng
Toolbox: ChƯa cac
control trong NET
framework được chia
chư c năng (kéo thả trực
tiếp control vào Form)
Solution Explorer: giu’p theo doi va’ quan
Lifecycle Events ~ Thread: =
Toolbox
Search Toolbox pP- b> All Windows Forms a
4 Common Controls Pointer Button CheckBox CheckedListBox ComboBox DateTimePicker Label LinkLabel ListBox ListView MaskedTextBox MonthCalendar Notifylcon
Properties: Cho phe’p thay đổi
câu hinh cac thuộc tính của
control cu ng nhƯ tạo sự kiện cho control do’
Trang 8Ấrị Đại Học Quốc Gia TP.HCM “ở Đại Học Kinh Tế Luật
Môi trường thiết kế
“ Trong C#, màn hình tương tác giỮa người dùng và phần mềm
được gọi là Form(còn gọi la` một cửa số chương tri`nh, chưa
ca c control kha c bên trong):
ShowlnTaskbar Size
SizeGripStyle
StartPosition Tag
Text TopMost TransparencyKey UseWaitCursor WindowState
Form1 indows.Forms.Form
Thiết lập thuộc tứt
True 0,0 100%
0, 0, 0, 0
No
False True True
300, 300 Auto WindowsDefaultLocation
Form1 False
False Normal
h
Trang 9
Ấrị¡ Đại Học Quốc Gia TP.HCM 7 Đại Học Kinh Tế Luật
Môi trường thiết kế
“_ Các thuỘc tính quan trọng của Form:
Name Tên form, thươ ng bã t đâ u bă ng frm
Text Tiêu đê` form
BackColor Ma u né n form
ForeColor Mau chu’ trên form
Font Dinh dang chu’ trén form
StartPosition |Dinh vi tri’ form khi mƠI xuâtt hiện (ø1 a ma n hi nh
hoặc tự khai ba o ) WindowState |Định trạng tha1 form khi mƠI xuât hiện (Normal,
Minimized, MaxImined)
AcceptButton | Chọn nu t bầ m được thực hiện khi nhân Enter
CancelButton | Chọn nu t bâ m được thực hiện khi nhân Escape
Trang 10
Ấrị Đại Học Quốc Gia TP.HCM SỞ Đại Học Kinh Tế Luật
Môi trường thiết kế
FormClosing | Thực hiện lệnh trước —
khi cửa sổ đƯợc đóng
Trang 11
Ấrị Đại Học Quốc Gia TP.HCM
“ở Đại Học Kinh Tế Luật
đ ƯỢC S a p xX ep trén Button
.” ~ ae A » RadioButton L
hiỂn thị dư liệu dOng lr; CheokedListbox
thoi giup ng ƯỜI sỨ 1 datacra ListView
dụng có thể tương
tác với hệ thống
Trang 12
@.- Đại Học Quốc Gia TP.HCM = Đại Học Kinh Tế Luật
- Dialog hệ thống: MessageBox, FontDialog,
ColorDialog, OpenFileDialog, SaveFileDialog, FolderBrowserDialog
Trang 13Ấrị¡ Đại Học Quốc Gia TP.HCM = Dai Học Kinh Tế Luật
@Label
Label la’ control du`ng dé thê hiện một chuô”1 hoặc văn bản trên form
Name Tén label, thuo ng ba t da u ba ng /b/
ListView NET Component
MonthCalendar
NumericUpDown PictureBox
Trang 14Ấrị¡ Đại Học Quốc Gia TP.HCM
7 Đại Học Kinh Tế Luật
TextBox được du`ng để la`m nƠi cho =e a
neươ ¡ du`ng nhập thông tin vao chương |: |
Name Tên textbox, thươ nø bã t đâ u ba ng txt
Text Chuô”1 văn bản được hiển thị
Enabled Xa c dinh textbox co’ hoat dong (true) hay khong (false)
Multiline Nêu đặt la /rue thì nội dung trong textbox đƯỢc viê t
tha nh nhié u do ng
AcceptsReturn |Nêu dat la true thi noi dung trong multiline textbox
châ p nhận dâ u xuô ng ha ng ("#W¡”) PasswordChar | Khai ba o ky tự thay thê' khi nhập password (v1 dụ "*?
ReadOnly Nêu đặt la` /rue, textbox chỉ được phep đọc, không
đƯợc phe“p chỉnh sửa nội dung
Trang 15
Ấrị¡ Đại Học Quốc Gia TP.HCM = Dai Học Kinh Tế Luật
®Button
Button la nut ba m trén form, thuo ng dudc du ng nhu
một hiệu lệnh bã t đâ u thực hiện một công việc na o đo ˆ
Thuộc tỉ nh M6 ta
Name Tén button, thuo ng ba't da u ba ng bin
Text Tiéu dé button trén form
Trong ma n hi nh thiê t kê“, nhân
ComboBo} NET Component DateTimef : B
Label —
Linkl abel
double click vao Button se tao ra
phuong thu’c xU ly’ su kién mac dinh ¬
cua Button la` Click a eek VionthCalendar
Trang 16Ấrị Đại Học Quốc Gia TP.HCM
= Đại Học Kinh Tế Luật
Nhấn vào Button btnHo thì gán nội dung của txtHo cho IblHoTen
Nhấn vào Button btnTen thì gán nội dung cUa txtTen cho IblHoTen
Nhấn vào Button btnHoTen thì gán nỘi dung của txtHo cộng với txtTen
cho IblHoTen
HuOng dan: lblHoTen.Text = txtHo.Text +“ “+ txtTen.Text
Nhấn Double click vào IblHoTen thì nội dung của IbIHoTen bị xoá
Nhấn vào btnKetThuc thi đóng chương trình
Trang 17@.- Đại Học Quốc Gia TP.HCM = Đại Học Kinh Tế Luật
@Checkbox va RadioButton
> Checkbox cho phép trén giao diện ngƯỜi sử dụng có
thể chọn nhiều lựa chọn
> RadioButton cho phép trên giao diện ngƯỜi sử dụng
chỉ được chọn I lựa chọn Phải kết hợp với
GroupBox để nhóm các Radio Button (bắt buộc)
Name Tên control, thuOng bắt đâu băng chk
(CheckBox) va rad, rbtn (RadioButton)
Text Tiêu đê` control, thươ`ng nă`m bên phải control đo”
Checked Trạng tha 1 control, true la dang dU@Qc chon
Trang 18
£ - Đại Học Quốc Gia TP.HCM SỞ Đại Học Kinh Tế Luật
khi Form load `
- Radiobutton Red được chọn mặc định
›_ Con trỏ xuất hiện ngay tại ô Nhập tên
» Khi gd tén vao 6 Nhap tén (g6 ky tU nao thi lable lap trình chạy song song cùng gid tri trong 6 nhap tén)
Trang 19Ấrị Đại Học Quốc Gia TP.HCM
“ở Đại Học Kinh Tế Luật
PictureBox —
ProgressBar
RadioButton
Trang 20@.- Đại Học Quốc Gia TP.HCM = Đại Học Kinh Tế Luật
@Picturebox
Cac thuOc tinh quan trOng cUa PictureBox:
Name Tên control, thươ ng bã t đâ u bã ng ø¡c
BackgroundImage Ding dé hién thi hinh anh
BackgroundImageLayout_ | Thiết lập kiểu xuất hiện hình ảnh
SizeMode Tthiết lập kiểu xuất hiện hình ảnh
DEEDRBRUHBES RE EBBG Em an se picDemo.SizeMode=PictureBoxSizemode.|
a, Tile z:Ƒ' Stretchlmage |
Trang 21@.- Đại Học Quốc Gia TP.HCM
= Đại Học Kinh Tế Luật
Khi chƯƠng trình vừa thực thi
›, Các đỐi tƯỢng đƯỢc “neo” sao cho khi ngƯời dùng thay đổi kích thước
form thì các đỐi tượng được resize kích thƯỚc sao cho “dễ nhìn”
.-_ picTurnOn được hiển thị, picTurnOff được ẩn ngay bên dƯỚi picTurnOn
Khi người dùng đưa chuột vào picTurnOn sẽ xuất hiện tip “Click me to
Turn OFF the Light!”, và ngược lại trên pic TurnOFE
Hiện tên mặc định vào ô Name
Lable ngay bên dưới pictureBox hiển thị thông báo
“Jack Turn Off the Light ,please!”
Trang 22ấ¡ Đại Học Quốc Gia TP.HCM _ Đại Học Kinh Tế Luật
Trang 23Ấrị¡ Đại Học Quốc Gia TP.HCM = Dai Học Kinh Tế Luật
®DatetimePicker
Các thu6c tinh quan trong:
Format Cách hiển thị ngày tháng có sẵn
Trang 24@.- Đại Học Quốc Gia TP.HCM = Đại Học Kinh Tế Luật
Name Tén listbox, thuo ng ba't da u ba ng /st
SelectionMode Ca’ch 1Ua chon trong danh sa ch (chỉ được chọn
một hoặc cho phe p chọn nhiê u)
Items Ca c lựa chọn trong listbox
SelectedIndex Trả vê` chi sôˆ của item được chọn
SelectedIndices |Trả vê` tập hợp cac chỉ sô“ của ca c items được
chọn trong lIstbox
SelectedItem Trả vê` item được chọn
SelectedItems Tra vê` tập hợp items được chọn
Items.Count Tra vé s6 luOng phan tU trong Listbox
Trang 25
Ấrị¡ Đại Học Quốc Gia TP.HCM = Dai Học Kinh Tế Luật
@Listbox
Các phương thỨc quan trọng của IstABC.Items.MethodX YZ()
Với IstABC là tên của Listbox nào đó, và MethodXYZ được
liệt kê dƯỚi đây:
Phương thức |Mô tả
Add Thêm một phần tử vào listbox
AddRange Thêm nhiều phần tử vào listbox
Remove Xóa một phần tử khỏi listbox
RemoveAt Xóa một phần tử theo vị trí khỎi listbox
Clear Xóa toàn bộ phần tl trong listbox
Insert Chèn một phần tử vào listbox
OfType Lọc ra các phần tử có cùng kiểu dữ liệu
Trang 26Ấrị Đại Học Quốc Gia TP.HCM ZZ Đại Học Kinh Tế Luật
Form dat hang
Khachhang NguyenVanA Danh sách sản phẩm
| Điênhoại 123667
|
fi Fe 5
Khach hang: Nguyen VanA
Trang 27Ấrị¡ Đại Học Quốc Gia TP.HCM = Dai Học Kinh Tế Luật
*Combobox
ComboBox cu ng cung ca p một danh sa ch cac lựa chọn như
listbox nhưng kha’c vê` ca ch hiển thị va` không hô” trợ chọn
Name Tên combo box, thươ ng bã t đầ u ba ng cho
Items Ca c lựa chọn trong combo box
Items.Count Trả về số lượng phần tỬ trong combobox
Trang 28
@.- Đại Học Quốc Gia TP.HCM = Đại Học Kinh Tế Luật
@Combobox
Các phương thỨc quan trọng của cboABC.Items.MethodXYZQ
Với cboABC là tên của Combobox nào đó, va MethodX YZ
được liỆt kê dƯới đây:
Phương thức |Mô tả
Add Thêm một phần tử vào Combobox
AddRange Thém nhiéu phan tt? vio Combobox
Remove Xóa một phần tử khỏi Combobox
RemoveAt Xóa một phần tử theo vị trí khỏi Combobox
Clear Xóa toàn bộ phần tử trong Combobox
Insert Chèn một phần tử vào Combobox
OfType Lọc ra các phần tử có cùng kiểu dữ liệu
Trang 29Ấrị Đại Học Quốc Gia TP.HCM ZZ Đại Học Kinh Tế Luật
Khachhang Nguyen Van A Thông tin đơn hàng
Điện thoại 1234567 Thông tin đặt hàng
Trang 30Ấrị Đại Học Quốc Gia TP.HCM 7 Đại Học Kinh Tế Luật
@RichTextbox
RichTextBox dùng để hiển thị dữ liệu theo nhiều dòng Có thể
định dạng được dỮ liệu trong control này (màu chữ, cơ chữ, font chữ) Đặt tên bắt đầu với rtb
the market, collaborate with the most skilled teams in your
field, and work for the most elfe companies in the word
Sound too good to be true? Take a closer look_
As a Senior Developer - Java, you'll own a key piece of a cloud based java stack You'll have end+o-end responsibility for the delivery and quality of this component, including its v
rtbData.SelectionFont.Style “ FontStyle.Bold);
Trang 31@.- Đại Học Quốc Gia TP.HCM = Đại Học Kinh Tế Luật
Giới thiệu thêm một số Control nâng cao
(Chi tiết về các control này sẽ được demo
trực tiếp trên lớp lý thuyết
Sinh viên cần biết để áp dụng làm đồ án môn học)
Trang 32
Đại Học Quốc Gia TP.HCM
Đại Học Kinh Tế Luật
@ListView
ListView là control dùng để hiển thị
thông tin theo dạng lƯỚi (dòng va cOt),
thường đặt tên bắt đầu lv
Dưới đây là 3 dang ListView thuOng gap
nhất trong các Ứng dụng:
——————————— anh sách nhân viên ————————————————————————
STT Mã nhân viên Họ tên
1 999999999 Trần Duy Thanh
2 100000008 Nguyễn Văn Thông
3 100000009 Phạm Thị Xuân Diệu
ListView Demo aes} || 4 100000010 Trần Phạm Mẫn Nhi
File View Format ListView 5 555555555 Trần Thị Thúy
: : 6 111111222 Hồ Hồng An
Detail 7 999999888 Trin Thanh Ting
: [ 8 111111333 Trần Đức Tài
al Name | — Name | Phone Last Name 9 111222555 Nguyễn Văn Hùng
Ly Thi Bong 23456 10 100000012 Hoàng Tặng Tý
Ệ Nguyen Van Chinh 4555 - 11 100000013 Đỗ Công Thành
Ệ Tran Chanh Truc 123456 First Name 12 Nguyễn Văn Dũng
!Xem theo nhân viên _)Xem theo phòng ban
STT Mã Nhân Viên Tên Nhân Viên Phòng ban: ĐẠI HÔI ĐỒNG CỔ ĐÔNG a1 999999888 Trần Thanh Tùng
^2 222222222 Nguyễn Văn Dũng
23 100000017 Nguyén Van Ty Phong ban: 01 TONG GIAM ĐỐC
a1 123456789 Nguyén Van Théng
Phòng ban: 02 BAN KIỂM SOÁT a1 100000010 Trần Phạm Mẫn Nhi Phòng ban: 01 PHÓ TỔNG GÁM ĐỐC CHIẾN LƯỢC
%2 888888888 Định Thi Thanh Mai
7 2 1nnnn^2onn Nl¬ nẫn Xi yân Phái
Trang 33
Đại Học Quốc Gia TP.HCM
Đại Học Kinh Tế Luật
@TreeView
TreeView 1A control ding dé
Thông tin giao dịch theo thời gian [Danh sách khách hàng đồng ý hẹn gặp ]
Từ: [ / / IxÌT&:| ! 7 x]| Loc | STT Số phone KH Tên khách hàng —ềềềềễễ Nhắc nhỏ Đánh giá |
Se | 0987776751 | TRAN TUAN HAI | Chuiagiaodich |
Théi gian Sốgiaodich Ghi chú tiến độ 2 0982339090 PHAN THANH DAU Chưa giao dịch
G-EE Năm 2016 10 3 0939853939 NGUYEN THAI THUY NGUYEN Chua giao dich
L-EÈE Tháng 02/2016 : 4 01265477080 DOAN CONG TUAN Chưa giao dịch
= : 5 01229198577 TRAN THANH THUY Chưa giao dịch
==.Ngày,1002/2016 0 BãgoL00006 Khách, | ; 01633394359 NGUYEN VAN CHIEU Chưa giao dịch
E= Ngày 03/02/2016 0 Đã gọi 0006Khách || ; 0918613072 HOANG DUY KHANH Chưa giao dịch
ES Ngày 08/02/2016 0 Đãgo00/10Khách || s 0974629198 TRAN NGOC HIEU Chưa giao dịch
ÊS Ngày 07/02/2016 0 Đã gọi 00/12 Khách
(ES Ngày 11/01/2016 3 Đã gọi 03/12 Khách
—-ÊŠ Ngày 06/01/2016 7 Đã gọi 05/10 Khách
' ma
————————————————— Thông tin chỉ tiết danh sách giao dịch |—————————————————————
STT Số phone KH Thời gian bắt đầu Thời gian kết thúc Nội dung trao
d
hiển thị thông tin theo dạng cây
thư mục, thường đặt tên bắt đầu tv
Thường ListView được kết hợp với TreeView trong Ứng dụng:
Nguyen van Tuan THTHS4,
Nguyen van Tuan Nous en thi ron TH
| - guyen van Luong
| Nguyen thị Lan le Nghiep THTH5B
ị Nguyen van Luong Tran Long THTH5B
=-ấ THTH5B _ Ly Hai THTH5B
| le Nghiep Le Trung THTH5E
ị Š Tran Long Ton thi Mai THTH5E
ị oo) Ly Hai Tran Minh THTHSC
=:Ñ THTH5E
Le Trung Ton thi Mai Tran Minh