Lưu hành nội b Trang 19
a. Công dng:
- Dùng trình bày văn bản và cho phép người dùng được thay đổi nội dung văn bản.
- Công dụng chính là cho người dùng nhập văn bản.
b. To TextBox:
- Chn công c
- Rê chut và v TextBox trên form.
c. Thuc tính:
Thuc tính Mô t
PasswordChar
Quy định ký t hin th cho ô mt khu.
Multiline True: hin thanh cun / False: không hin thanh cun
ScrollBars Thanh cun (None / Horizontal / Vertical / Both)
3. Button ( )
a. Công dng:
- Dùng để thc thi lnh.
- Khi nhp chuột lên button, chương trình nhận được tín hiu Click và lệnh được thi hành.
b. To Button:
- Chn công c
- Rê chut và v Button trên form.
c. Thuc tính:
Thuc tính Mô t
Text Nhp ni dung vào Button
4. CheckBox ( )
a. Công dng:
- Cho phép người dùng chn hoc không chn.
b. To CheckBox:
- Chn công c
- Rê chut và v CheckBox trên form.
c. Thuc tính:
Thuc tính Mô t
Checked Không có du check (False) / Có du check (True)
Ví d 3.1:
* Khi to mt ng dng Windows Forms Application, lưu với tên là Vi Du 3.1 như sau:
* Yêu cu:
- Nhp:
+ Username vào TextBox Tên đăng nhập (Name: txtUser)
+ Password vào TextBox Mt khu (Name: txtPass)
Lưu hành nội b Trang 20
- Chn hoc không chn ô CheckBox Ghi nh (Name: chkNho)
- Nhp button Đăng nhập thì hin ra hp thông báo cha Tên đăng nhập, Mt khu; Và
“Bn có ghi nh (nếu chkNho có đánh dấu chn).
- Nhp button Xóa thì xóa trng TextBox Tên đăng nhập TextBox Mt khu, đồng
thi di chuyn con tr vào txtUser.
- Nhp button Dng thì dừng chương trình.
* Hướng dn:
- Thiết kế Form như yêu cầu, trong đó form có các thuộc tính sau:
+ AutoSize: True
+ Font: Times New Roman
+ Size: 12
+ Text: Form Đăng Nhập
+ Icon: logo.ico
- Nhắp đúp vào button Đăng nhập, thêm đoạn code sau:
string thongbao;
thongbao = "Tên đăng nhập là: " ;
thongbao += this.txtUser.Text ;
thongbao += "\n\rMật khẩu là: " ;
thongbao += this.txtPass.Text;
if (this.chkNho.Checked==true) {
thongbao += "\n\rBạn có ghi nhớ.";
}
MessageBox.Show(thongbao,"Thông báo");
- Nhắp đúp vào button Xóa, thêm đoạn code sau:
this.txtUser.Clear();
this.txtPass.Clear();
this.txtUser.Focus();
- Nhắp đúp vào button Dng, thêm đoạn code sau:
Application.Exit();
+ Có th thay button Xóa bng button Reset với đoạn code như sau:
this.txtUser.ResetText();
this.txtPass.ResetText();
this.txtUser.Focus();
* Phn B sung:
1. MessageBox.Show: hin hp thông báo
MessageBox.Show("Thông báo" , "Tiêu đề");
MessageBox.Show("Thông báo", "Tiêu đề", Buttons, Icon);
+ Buttons (nút lệnh):
MessageBoxButtons.OK
MessageBoxButtons.OKCancel
MessageBoxButtons.YesNo
MessageBoxButtons.YesNoCancel
+ Icon (biểu tượng):
MessageBoxIcon.Information
MessageBoxIcon.Question
MessageBoxIcon.Warning
+ DialogResult (kết quả trả về):
DialogResult.Ok
Lưu hành nội b Trang 21
DialogResult.Yes
2. Dừng chương trình:
this.Close();
Application.Exit();
3. Event (s kin) là gì?
- S kin nhng phn ng của đối tượng. Nói cách khác, s kin nhng tín hiu phát
ra khi người dùng thao tác trên đối tượng.
- Nh có event, người lp trình s nhận được nhng tín hiu và x lý nhng tín hiệu đó đ
phn hi lại cho người dùng, to nên s nhịp nhàng cho chương trình.
4. Bng trình bày các s kin (Events) ca control
S kin Mô t
Click Gọi đến khi control b Click. Trong mt vài control, event này cũng xảy
ra khi người dùng nhn phím Enter.
DoubleClick
Gọi đến khi control b Double-Click. Trong mt vài control, event y
không báo gi được gi. Ví d: control Button.
DragDrop Gọi đến khi việc “Drag and Drop” được hoàn tt.
DragEnter Gọi đến khi đối tượng vừa được “Drag” đến biên ca control.
DragLeave Gọi đến khi đối tượng vừa được “Drag” ra ngoài biên ca control.
DragOver Gọi đến khi đối tượng được “Drag” bên trong control.
KeyDown Gọi đến khi va bm mt phím bt k t 1 control đang focus.
S kiện này luôn được gọi trước s kin KeyUp.
KeyPress Gọi đến khi va bm mt phím bt k t 1 control được focus.
S kin này được gi sau s kin KeyUp.
KeyUp Gọi đến khi va bm mt phím bt k ri th ra t 1 control đang focus.
S kiện này luôn được gi sau s kin KeyDown.
GotFocus Gọi đến khi control được focus.
LostFocus Gọi đến khi control b mt focus.
MouseDown
Gọi đến khi con tr chut nm trên 1 control nút chuột được nhp
nhưng chưa thả ra.
MouseMove Gọi đến khi con tr chuột đi qua 1 control.
MouseUp Gọi đến khi con tr chut nm trên 1 control và nút chut vừa được th.
Paint Gọi đến khi control được v.
Validated Gọi đến khi control focus, property CaucesValidation được đặt true
và sau khi gi vic kim tra bng Validating.
Validating Gọi đến khi control mất focus, property CaucesValidation được đặt
true.
Ví d 3.2:
* Ci tiến Vi Du 3.1 cho button Dng như sau:
- Khi nhp vào button Dng thì xut hin hp thoi hỏi đáp có 2 button Ok, Cancel.
- Chương trình ch dng khi nhp tiếp vào nút Ok.
* Hướng dn: Sa li button Dng như sau
DialogResult traloi;
traloi = MessageBox.Show("Chắc không?", "Trả lời",
MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
if ( traloi == DialogResult.OK) Application.Exit();
Ví d 3.3:
* Khi to mt ng dụng Windows Forms Application, lưu với tên là Vi Du 3.3 gm:
Lưu hành nội b Trang 22
- Form1: được thiết kế như sau
- Form2: được thiết kế như sau
(txtUser, txtPass, btnDangnhap, btnThoat)
* Yêu cu:
- Khi chạy chương trình thì Form2 (Đăng nhập h thống) được m lên trước.
- Nhp:
+ Tên người dùng vào TextBox txtUser
+ Mt khu vào TextBox txtPass
- Nhp button Đăng nhập thì thc hin kim tra
+ Nếu txtUser = "teonv" và txtPass = "123" thì chuyển sang Form1.
+ Ngược li thì thông báo "Không đúng tên người dùng / mt khu !!!"
- Nhp button Thoát thì hin th thông báo "Chc không? "
+ Nếu chn Yes thì kết thúc chương trình.
+ Ngược li thì tr li màn hình Đăng nhập h thng.
* Hướng dn:
- Form1
. Thiết kế Form như yêu cầu, trong đó form có các thuộc tính sau:
+ AutoSize: True
+ Font: Times New Roman
+ Size: 12
+ Text: Màn hình chính
+ Icon: star.ico
. Form load:
Form frm = new Form2();
frm.ShowDialog();
- Form2
. Thiết kế Form như yêu cầu, trong đó form có các thuộc tính sau:
+ AutoSize: True
+ Font: Times New Roman
Lưu hành nội b Trang 23
+ Size: 12
+ Text: Đăng nhp h thng
+ Icon: logo.ico
. Đăng nhập: Nhắp đúp vào button btnDangnhap, gõ vào đoạn code sau
if ((this.txtUser.Text=="teonv")&&(this.txtPass.Text=="123"))
this.Close();
else
{
MessageBox.Show("Không đúng tên người dùng / mật
khẩu !!!","Thông báo");
this.txtUser.Focus();
}
. Thoát: Nhắp đúp vào button btnThoat, gõ vào đoạn code sau
DialogResult traloi;
traloi = MessageBox.Show("Chắc không?", "Trả lời",
MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
if ( traloi == DialogResult.OK)
Application.Exit();
Bài tp
1. - Thiết kế form như mẫu.
(txtsSo1, txtSo2, txtKQ, btnCong, btnTru, btnNhan, btnChia, btnXoa)
- Viết chương trình làm các phép toán: cng, tr, nhân, chia cho các button btnCong,
btnTru, btnNhan, btnChia.
- Xóa: Xóa trng các TextBox.
- Thêm vào button Dng (btnDung), khi nhp vào btnDung thì dừng chương trình.
- Ci tiến:
Khi nhp button btnChia, nếu txtSo2 0 thì xut hin hp thông báo li ri xóa trng
txtSo2 và di chuyn con tr đến TextBox này.
2. Viết chương trình giải phương trình bc nht: bx + c = 0