Contents
Checkbox
Checkbox (Check box, tickbox hay tick box) là đối tượng trên GUI application, cho phép người dùng tạo ra 2 sự lựa chọn. Ví dụ, user phải trả lời “yes” (check checkbox) và “no” (uncheck checkbox) cho câu hỏi yes/no.
Chúng ta sẽ sử dụng source code base tại bài viết Dialog-based để add thêm checkbox.
Tạo Checkbox resource
Chọn [View] -> [Other Windows] -> [View Resources] Click [ID_MFCAPP_DIALOG] trong folder Dialog để hiển thị dialog [MFCApp]
Chúng ta add thêm button để hiểu cách tạo button resource trên màn hình dialog.
Chọn toolbox ở góc trái màn hình, search keyword “checkbox”
Kéo thả button vào màn hình dialog
Để thay đổi thuộc tính button, right-click chuột vào checkbox [Check1], chọn [Properties]
Thuộc tính của checkbox [Check1]
Checkbox có caption là “Check1” và ID là IDC_CHECK1
Chúng ta có thể edit các thuộc tính default của checkbox
Xử lí sự kiện khi check/uncheck vào Checkbox
Right-click chuột vào checkbox [Check1], chọn [Add Event Handler…]
Chọn [Add and Edit] Event Handler Wizard tự động tạo interface phương thức xử lí sự kiện check/uncheck [Check1] trong file MFCDialogDlg.cpp
void CMFCAppDlg::OnBnClickedCheck1() { // TODO: Add your control notification handler code here }
Nhiệm vụ tiếp theo, chúng ta cần add logic xử lí cho phương thức OnBnClickedCheck1().
void CMFCAppDlg::OnBnClickedCheck1() { // TODO: Add your control notification handler code here BOOL bCheck = IsDlgButtonChecked(IDC_CHECK1); if (bCheck) { SetWindowText(L"Check Box"); } else { SetWindowText(L"MFCDialog"); } }
Hàm IsDlgButtonChecked() trả TRUE, nếu user check vào checkbox. Và trả về FALSE, nếu user uncheck checkbox.
IDC_CHECK1 là ID của checkbox.
Khi user check checkbox, title bar của dialog được set là “Check Box”, khi uncheck title bar đươc set là “MFCDialog”
Leave a Reply
You must be logged in to post a comment.