QuytFootball
Thành viên mới
- Tham gia
- 21/8/21
- Bài viết
- 18
- Được thích
- 7
Tôi nói rất rõ là 2 trường hợp trắc nghiệm và bình chọn là có quyền để trống, và tôi gợi ý code cho 2 trường hợp đó. Còn trường hợp bắt buộc chọn 1 thì phải cẩn thận thôi. Viết cho người khác xài phải kèm hướng dẫn sử dụng, không làm theo ráng chịu. Chỉ khi có quyền để trống mới không để mặc định.Tác gải yêu cầu:
xài một cái CheckBox cho nó lành
Ở đây cũng nói rất rõ là nếu ai đó nói phải để mặc định thì tôi cũng sẽ nói cũng có các trường hợp được để trống và do đây là việc mở rộng vấn đề mà chủ topic yêu cầu nên không ràng buộc việc có bắt buộc là phải chọn hay không chọn một trong nhiều cái OptionButton. OK?Tôi nói rất rõ là 2 trường hợp trắc nghiệm và bình chọn là có quyền để trống, và tôi gợi ý code cho 2 trường hợp đó. Còn trường hợp bắt buộc chọn 1 thì phải cẩn thận thôi. Viết cho người khác xài phải kèm hướng dẫn sử dụng, không làm theo ráng chịu. Chỉ khi có quyền để trống mới không để mặc định.
Còn Checkbox chỉ dùng cho trường hợp yes/No (đối lập) chứ không dùng cho 2 tuỳ chọn với 2 nội dung không đối lập nhau.
Tôi không muốn tranh luận hoặc cãi nhau: Nghĩa gợi ý 2 trường hợp "không bắt buộc chọn" và tôi gợi ý code khi "không bắt buộc chọn" nha! Đừng nghĩ xa quá rồi kiếm chuyện.Ở đây cũng nói rất rõ ...
Vấn đề CheckBox, thử đưa ra trường hợp nào mà 2 OptionButton (và chọn 1 là True) để tôi xử lý với 1 CheckBox đi, chứ nói không thì không được.
Đơn giản thế mà ta????Tôi không muốn tranh luận hoặc cãi nhau: Nghĩa gợi ý 2 trường hợp "không bắt buộc chọn" và tôi gợi ý code khi "không bắt buộc chọn" nha! Đừng nghĩ xa quá rồi kiếm chuyện.
Còn trường hợp 2 tuỳ chọn không đối lập thì thiếu gì:
- Chọn hình tròn hay hình vuông (form tính diện tích) (nếu checkbox thì label là gì? nếu label là "hình tròn" thì khi không check không biết là hình thế nào)
- Chọn nhận quà hay nhận voucher (form đổi điểm) (nếu label của checkbox là "nhận quà" thì khi không check làm sao biết là sẽ nhận gì?)
- Chọn tách sheet hay tắt excel. Chọn label là gì?
Đó là cố tình làm phức tạp hoá lên, nếu dùng 2 OptionButton thì đâu cần cái label khủng.Đơn giản thế mà ta????
.............
Nếu bỏ 2 option vào trong 1 frame, thì dùng ngay caption của frame để diễn giải "Chọn hình", lại còn gọn gàng và thẩm mỹ nữa.Có thể dùng Label ngắn gọn vd. "Hãy lựa chọn".
phải để người nhập xác định rõ ràng, không vì một thao tác mà quên chú ý đến sự lựa chọn nhằm xác định chủ ý của mình. #16
sau khi nhập liệu xong thì mình lại cho cả 2 chưa chọn gì cả để tiếp tục nhập nghiệp vụ mới #18
.............
Nhầm. Chủ thớt chỉ có 2 lựa chọn chứ không nhiều hơn.
Có thể dùng Label ngắn gọn vd. "Hãy lựa chọn". Dùng CheckBox thì phải giải thích, không đánh dấu thì nghĩa là gì (hoặc đánh dấu thì nghĩa là gì).
Với OptionButton thì người ta nhìn thấy ngay 2 lựa chọn là "vuông" và "tròn". Với CheckBox nếu Caption = "Hình vuông" thì người dùng hơi lúng túng khi không nhớ lựa chọn "kia" là gì.
Giải thích thì đượng nhiên dài dòng văn tự hơn.
Tất nhiên khi số lựa chọn > 2 (chọn 1 từ n, với n > 2) thì không thể dùng CheckBox. Còn OptionBiutton luôn dùng được.
Tôi thì thích cụm từ "bị bất ngờ". Tức đang quen "thế này", tự dưng bị gáo nước lạnh, phải mất một lúc định thần lại.- Nếu cần cả hai tính chất này thì các controls khác sẽ bắt buộc phải dùng code để bù lắp. Code bù lắp sẽ rất khó bảo trì. Và đối với người quen UI thì sẽ khó hiểu. Điển hình, người ta quen theo luật dấu tròn là option button (một lựa chọn), dấu vuông là checkbox (0-n lựa chọn); bi giờ mình dùng checkbox thay option button thì người dùng sẽ chưng hửng.
Tôi góp thêm 1 ý khi "muôn vàn" = 2:Tôi thì thích cụm từ "bị bất ngờ". Tức đang quen "thế này", tự dưng bị gáo nước lạnh, phải mất một lúc định thần lại.
Trường họp này thì dùng bao nhiêu CheckBox(es), 1 hay 2? và label chúng thế nào?Tôi góp thêm 1 ý khi "muôn vàn" = 2:
Nếu 2 tuỳ chọn mang tính đối lập như Yes/No, đúng/ sai, có/ không, chịu/ ứ chịu, ... thì nên dùng checkbox, nếu 2 tuỳ chọn không mang tính trái ngược nhau (không đối lập nhau), thì nên dùng OptionButton.
Theo tôi nếu chỉ có 2 trạng thái bật/tắt thì dùng CheckBox là đúng rồi. Dùng OptionButton sẽ gặp rắc rối.Trường họp này thì dùng bao nhiêu CheckBox(es), 1 hay 2? và label chúng thế nào?
Cho một ví dụ có hình ảnh minh hoạ. Đặt CheckBox(es) và Option Buttons bên cạnh nhau xem cái nào dễ hiểu (đối với người dùng), dễ xài (dối với người phát triển) hơn?
Đối với 2 tuỳ chọn đối nghịch như tôi đã thí dụ, thì chỉ cần 1 checkbox. Caption của nó là cái nào cũng được (1 trong 2 tuỳ chọn), vì người dùng hiểu ngay trái ngược đúng là sai, trái ngược sai là đúng; trái với có là không và ngược lại. Thí dụ trong việc tính diện tích:Trường họp này thì dùng bao nhiêu CheckBox(es), 1 hay 2? và label chúng thế nào?
Cho một ví dụ có hình ảnh minh hoạ. Đặt CheckBox(es) và Option Buttons bên cạnh nhau xem cái nào dễ hiểu (đối với người dùng), dễ xài (dối với người phát triển) hơn?
Chú: năm 2000, lúc tôi được tiếp xúc những bài học đầu tiên với WebForm thì ví dụ điển hình tôi học cho Y/N là ... Radio buttons (tên cũ của Option Buttons)
2 trạng thái (flip-flop/bistate) không phải là Options. Và vì vậy cái CheckBox gần với chuyện này hơn.Theo tôi nếu chỉ có 2 trạng thái bật/tắt thì dùng CheckBox là đúng rồi. Dùng OptionButton sẽ gặp rắc rối.
...
Yes/No là chọn lựa.Đối với 2 tuỳ chọn đối nghịch như tôi đã thí dụ, thì chỉ cần 1 checkbox. Caption của nó là cái nào cũng được (1 trong 2 tuỳ chọn), vì người dùng hiểu ngay trái ngược đúng là sai, trái ngược sai là đúng; trái với có là không và ngược lại.
Nam/ Nữ về lý thuyết là sự đối nghịch giới tính. Sau này có thêm giới tính thứ 3, thứ 4, ... nhưng mọi văn bản in ra, mọi form được tạo ra để đánh dấu đều là checkbox với label là Nam, Check là Nam và không check là nữ. Trong phần mềm mà tôi thiết kế thì dùng combobx chọn, List là 1 list động ai muốn thêm gì thì thêm.Yes/No là chọn lựa.
Cũng như Nam/Nữ.
Bỏ qua chuyện kỹ xảo. Tôi cốt ý nói: dùng CheckBox cho trường hợp 0/1 là buộc người dùng phải hiểu rằng "bạn không trả lời câu này đồng nghĩa với bạn chọn ..."Cũng là lý thuyết, tôi cũng có quyền để caption của checkbox là "Nữ", check là nữ và không check là nam. Chẳng qua nó ngược với thói quen người dùng. Cũng như "có khoét lỗ" và "không khoét lỗ", thói quen check là có, không check là không.
Còn vụ kỹ xảo bóp méo thì tôi không bàn, vì do tính chất ngành nghề nó vậy. Không chỉ trong survey
Trả lời/ không trả lời câu hỏi lại là đặc thù của 1 form dành riêng cho loại hình đặc thù nào đó. Form dùng tính toán hoặc dùng để nhập liệu thì người dùng phải cẩn thận. Để phòng xa thì như tôi đã nói: dùng combobox mặc định rỗng và ràng buộc not null."bạn không trả lời câu này đồng nghĩa với bạn chọn ..."
Phòng vậy hơi xa quá. Theo kinh nghiệm thiết kế form của tôi thì combobox hơi mất thì giờ chọn. Gặp cái form dùng làm data entry thì người dùng gõ quen rồi sẽ nhớ hết các thứ tự từng control. Các controls đơn giản họ gõ lẹ lắm..... Để phòng xa thì như tôi đã nói: dùng combobox mặc định rỗng và ràng buộc not null.