Đánh giá chủ đề:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[Hỏi] Cách thay đổi Back Color của control theo giá trị
#1
Em có vấn đề nhỏ này muốn hỏi các bác ạ.

Vốn dĩ em lập Table có 1 field tính toán ([KiemTra]) có 2 giá trị "ĐÚNG" và "SAI" tùy theo các điều kiện có thỏa mãn hay ko. Field [KiemTra] này dùng vào mục đích Validation Rule của Table, nếu [KiemTra] = "ĐÚNG" thì lưu, nếu ko thì báo lỗi.

Vì vậy khi em thiết kế Form cho Table này thì em cũng muốn hiện lên control [txtKiemTra] để người dùng biết các điều kiện đã thỏa mãn chưa. Do nó là Field tính toán nên em để chế độ Locked = Yes.

Ý định của em là nếu txtKiemTra = "ĐÚNG" thì BackColor = [Green] còn nếu là "SAI" thì BackColor = [Red]. (Back Color trong thiết kế form = [White])

Em viết Code như thế này:
          If Me.KiemTra = "SAI" Then
               Me.KiemTra.BackColor = RGB(197, 0, 35)
               Else
               Me.KiemTra.BackColor = RGB(72, 150, 32)
          End If

Đoạn code này em đưa vào event before update của txtKiemTra, thậm chí là Form load nhưng đều không ăn thua, nó cứ luôn thể hiện Back Color = [Green].

Em phải làm thế nào cho code chạy đúng ý mình ạ?
Chữ ký của toancvp Nếu tất cả đường đời đều trơn láng    
Có thể nào ta nhận ra ta Bat
Reply
Những người đã cảm ơn
#2
Thử xem dư thế lào nhé
 
If Me.KiemTra = "SAI" Then
   Me.KiemTra.BackColor = vbRed
   Else
   Me.KiemTra.BackColor = vbBlue
End If

Quan trọng cái "sai" của bạn như thế nào?
Chữ ký của cpucloi Tôi chỉ biết mỗi một điều là những điều tôi biết được còn quá ít 021
Gmail: cgiahuy13@gmail.com


ღღღღღTài sản của cpucloi (View All Items) ღღღღღ
Reply
Những người đã cảm ơn toancvp
#3
(08-07-16, 02:09 PM)cpucloi Đã viết: Thử xem dư thế lào nhé
 
If Me.KiemTra = "SAI" Then
   Me.KiemTra.BackColor = vbRed
   Else
   Me.KiemTra.BackColor = vbBlue
End If

Quan trọng cái "sai" của bạn như thế nào?

"SAI" "ĐÚNG" là kết quả điều kiện tính toán em để trong field KiemTra của Table bác ạ.

Em vừa thử rồi, nhưng kết quả vẫn chỉ có 1 màu thôi bác ạ, nó ko tự đổi màu khi trạng thái của control thay đổi.
Chữ ký của toancvp Nếu tất cả đường đời đều trơn láng    
Có thể nào ta nhận ra ta Bat
Reply
Những người đã cảm ơn
#4
Nếu text không phải là "SAI" thì là: ''ĐÚNG" hoặc "NULL" hoặc text bất kỳ => Sẽ Green khi load thôi.
Chữ ký của ongke0711 If you BORN poor, it's not your mistake. But if you DIE poor, It's your mistake!
ღღღღღTài sản của ongke0711 (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#5
(08-07-16, 04:21 PM)ongke0711 Đã viết: Nếu text không phải là "SAI" thì là: ''ĐÚNG" hoặc "NULL" hoặc text bất kỳ => Sẽ Green khi load thôi.

Đúng rồi ạ, bình thường khi mở form để ghi 1 record mới thì trường này luôn ở trạng thái "ĐÚNG", nhưng khi ghi đến các trường liên quan dùng để tính toán thì nó bắt đầu chuyển trạng thái sang "SAI". Nhưng ngay cả lúc đó thì Back Color cũng ko thay đổi theo bác ạ.
Trường [KiemTra] = "ĐÚNG" / "SAI" này của em là trường tự động tính toán, không phải là trường ghi dữ liệu.
Chữ ký của toancvp Nếu tất cả đường đời đều trơn láng    
Có thể nào ta nhận ra ta Bat
Reply
Những người đã cảm ơn
#6
Bạn đổi qua dùng Select case đi. Case Else cuối cùng sẽ mà màu trắng.
Dùng event after update các field liên quan tính toán.
Chữ ký của ongke0711 If you BORN poor, it's not your mistake. But if you DIE poor, It's your mistake!
ღღღღღTài sản của ongke0711 (View All Items) ღღღღღ
Reply
Những người đã cảm ơn toancvp
#7
Bạn đã để vào apter update chưa?
Chữ ký của zinzin8x zinzin8x,gia nhập Thủ Thuật Access từ 19-01 -16.
Reply
Những người đã cảm ơn toancvp
#8
(08-07-16, 05:15 PM)ongke0711 Đã viết: Bạn đổi qua dùng Select case đi. Case Else cuối cùng sẽ mà màu trắng.
Dùng event after update các field liên quan tính toán.

(08-07-16, 07:05 PM)zinzin8x Đã viết: Bạn đã để vào apter update chưa?

Em đã chuyển sang select case rồi,
Cũng cho vào khắp các event có thể có liên quan, như On change, After update, rồi form load, current form rồi. 

Vẫn chưa giải quyết đc vấn đề ạ.

P/S: Các bác đừng bảo em up file nhé, tại vì cái này của em là .mccdb, nếu em chuyển về .mdb để cầu cứu các bác thì định dạng này nó ko cho phép trong table có trường tính toán hay sao ấy, mình copy sang là nó chuyển thành field Short text như bình thường.
Chữ ký của toancvp Nếu tất cả đường đời đều trơn láng    
Có thể nào ta nhận ra ta Bat
Reply
Những người đã cảm ơn
#9
Hjx, có vẻ khó nhỉ, hoặc mình vẫn chưa hiểu vấn đề của bạn
Gửi file lên đi, mình đang dùng off 2k6 chắc mở được.
Chữ ký của cpucloi Tôi chỉ biết mỗi một điều là những điều tôi biết được còn quá ít 021
Gmail: cgiahuy13@gmail.com


ღღღღღTài sản của cpucloi (View All Items) ღღღღღ
Reply
Những người đã cảm ơn toancvp
#10
(09-07-16, 08:44 AM)cpucloi Đã viết: Hjx, có vẻ khó nhỉ, hoặc mình vẫn chưa hiểu vấn đề của bạn
Gửi file lên đi, mình đang dùng off 2k6 chắc mở được.

Sorry bác ạ, sáng h em bận quá. Bác xem thử giúp em nhé.
https://drive.google.com/open?id=0B5rfqy...HBLWVl0Y1E
Chữ ký của toancvp Nếu tất cả đường đời đều trơn láng    
Có thể nào ta nhận ra ta Bat
Reply
Những người đã cảm ơn


Có thể liên quan đến chủ đề
Chủ đề: Tác giả Trả lời: Xem: Bài mới nhất
  Cách đề tạo Combo Box và List Box Tương ứng Godspear 0 16 1 Giờ trước
Bài mới nhất: Godspear
  [Hỏi] Cách thêm dữ liệu vào form Main_Sub NganNguyen 1 29 8 Giờ trước
Bài mới nhất: maidinhdan
  Thay đổi hình ảnh theo mã feeling 3 149 04-11-16, 05:18 PM
Bài mới nhất: maidinhdan
  [Hỏi] Tổng hợp dữ liệu theo thời gian hoanghai902 1 139 21-10-16, 09:55 PM
Bài mới nhất: maidinhdan
  Lọc theo điều kiện trong listbox Ranju 3 177 06-10-16, 05:26 PM
Bài mới nhất: Ranju

Chuyển nhanh:


User(s) browsing this thread: 1 Guest(s)
Diễn Đàn Thơ Văn Thi Ẩm Lâu|Nhà Hàng Sông Thơ