CHECKBOX - RADIOBUTTON

1.     Checkbox

Checkbox là điu khin cho phép ngưi dùng chn hoc không chn trên Form, ngưi dùng có th chn mt hoc nhiu giá tr cùng lúc.

winforms bai4 02 PNG

Hình 2.31. Ví dụ sử dụng CheckBox

Chúng ta có mt s thuc tính ca Checkbox dưi đây:

Bảng 2.8. Một số thuộc tính của CheckBox

Thuộc tính

Mô tả

Checked

Giá trị True là được chịn, nếu thiết lập False thì không được chọn

CheckState

Thường dùng để kiểm tra tình trạng Checkbox có được chọn hay không. Mang 3 giá trị UnChecked, Checked và Indeterminate.

- Checked: Điều khiển đang được chọn

- UnChecked: Điều khiển không được chọn

- Indeterminate: Điều khiển ở trạng thái không hoạt động

AutoCheck

Mang giá trị True hoặc False, nếu giá trị True thì cho phép người dùng nhấp chuột để chọn, nếu là False thì không cho phép người dùng nhấp chuột chọn

Text

Chuỗi văn bản hiển thị bên cạnh Checkbox

ThreeState

Mang giá trị True hoặc False; nếu là True thì cho phép Checkbox có 3 trạng thái: Checked, UnChecked, Indeterminate

RightToLeft

Mang giá trị Yes hoặc No; cho biết chuỗi văn bản hiển thị (thuộc tính Text) nằm bên trái hay bên phải của Checkbox

2.     RadioButton

RadioButton tương t như Checkbox là điu khin cho phép ngưi dùng chn hoc không chn, đim khác bit là vi RadioButton ngưi dùng ch có th chn mt giá tr trong mt nhóm.

winforms bai4 01 PNG

Hình 2.32. Ví dụ sử dụng RadioButton

C hai điu khin Checkbox và RadioButton đu có chung mt s kin đó chính là CheckedChanged, xy ra khi thay đi trng thái chn ca Checkbox, RadioButton.

3.     Ví dụ sử dụng các điều khiển Checkbox và RadioButton

Trong ví d này s thc hin mt viết mt ng dng s dng Checkbox và RadioButton, c th như sau:

Thc hin thiết kế giao din cho Form như hình dưi đây:

winforms bai4 03 PNG

Hình 2.33. Thiết kế giao diện có sử dụng CheckBox và RadioButton

X lý mt s s kin sau:

·       Khi click vào nút "S thích ca bn" thì nhng Checkbox đưc chn bi ngưi dùng s hin th trên hp thoi MessageBox. Nếu không có Checkbox nào đưc chn thì thông báo cho ngưi dùng biết.

·       Khi click vào nút "Màu bn thích" thì RadioButton đưc chn bi ngưi dùng s đưc hin th trên hp thoi MessageBox.

Chúng ta s ln lưt thc hin các yêu cu nhé. Đu tiên s to giao din cho Form ging như ng dng mu.

·       Hai GroupBox ( bài sau sng dn chi tiết)

·       5 Checkbox vi 5 s thích tương ng

·       5 RadioButton vi 5 màu tương ng

·       2 Button

Các bn s thay đi mt s thuc tính như: Text, name, font,... cho ging vi Form mu.

Sau khi thiết kế xong giao din cho Form, bây gi đến lúc các bn s lý s kin cho hai nút Button. S kin đu tiên là khi các bn Click vào nút "S thích ca bn" thì các Checkbox đưc chn s hin th trên MessageBox.

Các bn Double Click vào Button cn x lý đ viết s kin. Chúng ta s s dng thuc tính Checked đ kim tra xem Checkbox có đưc chn hay không bng cách cho Checked == true.

Ta s to mt biếString str đ lưu các Checkbox đưc chn, nếu Checked == true thì thêm vào str.

private void btn_sothich_Click(object sender, EventArgs e)

        {

            string str = "";

            if(chkbox_muasam.Checked == true)

            {

                str = chkbox_muasam.Text + "\n";

            }

            if(chkbox_nghenhac.Checked == true)

            {

                str = str + chkbox_nghenhac.Text + "\n";

            }

            if(chkbox_thethao.Checked == true)

            {

                str = str + chkbox_thethao.Text + "\n";

            }

            if(chkbox_xemphim.Checked == true)

            {

                str = str + chkbox_xemphim.Text + "\n";

            }

            if(chxbox_dulich.Checked == true)

            {

                str = str + chxbox_dulich.Text;

            }

 

            if(str.Length > 0)

            {

                MessageBox.Show("Sở thích của bạn là: \n" + str);

            }

            else

            {

                MessageBox.Show("Không có sở thích nào bạn chọn!!");

            }

        }

Kết qu:

winforms bai4 04 png

Hình 2.34. Kết quả sử dụng CheckBox

Tiếp đến ta s x lý s kin khi Click vào nút "Màu bn thích", tương t như nút "S thích ca bn" ta s dng thuc tính Checked đ kim tra xem RadioButton có đưc chn, nếu đưc chn thì hin th ra MessageBox.

private void btn_mauthich_Click(object sender, EventArgs e)

        {

            string str = "";

            if (rdbtn_do.Checked == true)

            {

                str = rdbtn_do.Text + "\n";

            }

            if (rdbtn_hong.Checked == true)

            {

                str = rdbtn_hong.Text + "\n";

            }

            if (rdbtn_tim.Checked == true)

            {

                str = rdbtn_tim.Text + "\n";

            }

            if (rdbtn_trang.Checked == true)

            {

                str = rdbtn_trang.Text + "\n";

            }

            if (rdbtn_vang.Checked == true)

            {

                str = rdbtn_vang.Text;

            }

 

            if (str.Length > 0)

            {

                MessageBox.Show("Màu bạn thích là: \n" + str);

            }

            else

            {

                MessageBox.Show("Không có màu nào bạn chọn!!");

            }

        }

 


 

Kết qu:

winforms bai4 05 png

Hình 2.35. Kết quả sử dụng RadioButton

4.     Bài tập

Luyn tp tht nhiu đ có th s dng nó tht thành tho Checkbox và RadioButton đây là hai điu khin rt quan trng.