làm sao để textbox trong form nhấp nháy???

  • Thread starter Thread starter ST-Lu!
  • Ngày gửi Ngày gửi
Liên hệ QC

ST-Lu!

Love Wingchun
Tham gia
19/8/08
Bài viết
730
Được thích
546
Nghề nghiệp
Xích lô một thời
Trong một form nhập liệu em muốn (tạo một text box ghi chú NOTE)
- Khi textbox này không có dữ liệu bên trong thì màu nền trắng như bình thường
- Khi có dữ liệu bên trong textbox này thì màu nền của textbox sẽ chuyển đổi giữa 02 màu (trắng sang vàng và vàng sang trắng)
thời gian chuyển đổi khoảng 1s
--> Như vậy người làm sẽ chú ý (textbox khi đó sẽ nhấp nháy) và đọc thông báo note đó


Xin các cao thủ trợ giúp đoạn code trên (sự kiện em dùng là afterupdate (từ một combox)

xin cám ơn
 
Trong một form nhập liệu em muốn (tạo một text box ghi chú NOTE)
- Khi textbox này không có dữ liệu bên trong thì màu nền trắng như bình thường
- Khi có dữ liệu bên trong textbox này thì màu nền của textbox sẽ chuyển đổi giữa 02 màu (trắng sang vàng và vàng sang trắng)
thời gian chuyển đổi khoảng 1s
--> Như vậy người làm sẽ chú ý (textbox khi đó sẽ nhấp nháy) và đọc thông báo note đó


Xin các cao thủ trợ giúp đoạn code trên (sự kiện em dùng là afterupdate (từ một combox)

xin cám ơn
Bạn xem thử file đính kèm và chỉnh sửa lại theo ý nhé
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
-------------------------------
Em tắc đi thấy nó báo đồng hồ cát, em phải dùng End task để cancel nó
Hình như nó thiếu một điều kiện exit sub phải không anh?

Anh xem lại giúp

Cám ơn Anh Nhiều
 
Lần chỉnh sửa cuối:
Upvote 0
Trong một form nhập liệu em muốn (tạo một text box ghi chú NOTE)
- Khi textbox này không có dữ liệu bên trong thì màu nền trắng như bình thường
- Khi có dữ liệu bên trong textbox này thì màu nền của textbox sẽ chuyển đổi giữa 02 màu (trắng sang vàng và vàng sang trắng)
thời gian chuyển đổi khoảng 1s
--> Như vậy người làm sẽ chú ý (textbox khi đó sẽ nhấp nháy) và đọc thông báo note đó


Xin các cao thủ trợ giúp đoạn code trên (sự kiện em dùng là afterupdate (từ một combox)

xin cám ơn
Tôi làm cho bạn 1 cái TextBox nhấp nháy, việc còn lại bạn tự đưa nó vào file mình nhé
1> Trong Module
PHP:
Dim TG As Double
Private Sub T_Start()
  TG = Now + TimeSerial(0, 0, 1)
   UserForm1.TextBox1.BackColor = IIf((Second(Now) Mod 2), &H80000005, &HFFFF&)
   Application.OnTime TG, "T_Start", , True
End Sub
PHP:
Private Sub T_Stop()
  On Error Resume Next
  UserForm1.TextBox1.BackColor = &H80000005
  Application.OnTime TG, "T_Start", , False
End Sub
2> Trong Form
PHP:
Private Sub TextBox1_Change()
  Run IIf(TextBox1.Text = "", "T_Stop", "T_Start")
End Sub
PHP:
Private Sub UserForm_Terminate()
  Run "T_Stop"
End Sub
 

File đính kèm

Upvote 0
Thuật toán của Thầy nghĩ ra được thì quả là quá khó (như lên trời) đối với em
Em xin phép thử trình bày lại
1.
PHP:
Dim TG As Double
Private Sub T_Start()
  TG = Now + TimeSerial(0, 0, 1) 
   UserForm1.TextBox1.BackColor = IIf((Second(Now) Mod 2), &H80000005, &HFFFF&)
   Application.OnTime TG, "T_Start", , True
End Sub

Đoạn code trên tô màu nền cho text box ( true màu trắng, false màu vàng)
Cái hay ở đoạn trên là
(Second(Now) Mod 2) -> cho kết quả là 0 và 1 --> tạo nhấp nháy cho Text box

Ontime method set là true để chạy sub T_start

2.
PHP:
Private Sub T_Stop()
  On Error Resume Next
  UserForm1.TextBox1.BackColor = &H80000005
  Application.OnTime TG, "T_Start", , False
End Sub

OnTime method được set là false để cancel procedure "T_start"


3.
PHP:
Private Sub TextBox1_Change()
  Run IIf(TextBox1.Text = "", "T_Stop", "T_Start")
End Sub


Đoạn code trên sẽ cancel khi text box rỗng và chạy khi có dữ liệu

4.
PHP:
Private Sub UserForm_Terminate()
  Run "T_Stop"
End Sub

Và cuối cùng em cũng rất tâm đắc khi ta dùng sự kiện Terminate (tắt form ) để cancel thủ tục
---------

Khi mới nhìn code của Thầy em hoa hết cả mắt, nhưng lần mò vào HELP đọc mãi rồi cũng hiểu

Em đang giúp một cậu xuất hóa đơn tại chỗ làm
Tính cậu này thì đãng trí, dặn trước quên sau, có những khách hàng đặc biệt thì sẽ nhưng đặc điểm riêng khi xuất hóa đơn. Kêt quả là hóa đơn viết sai hủy liên tục
Em sử dụng code này để giúp remind cậu ấy


Cảm ơn vì Thuật toán của Thầy rât nhiều
 
Lần chỉnh sửa cuối:
Upvote 0
Cảm ơn vì Thuật toán của Thầy rât nhiều
Bạn ST-Lu xem bài này nè:
http://www.giaiphapexcel.com/forum/showpost.php?p=178004&postcount=2
Tôi cải biên từ nó đó ---> Thật ra cũng chẳng làm gì nhiều, code đồng hồ đã có sẳn, chỉ vẽ vời tí thôi
Cái mà bạn cần quan tâm ở đây là: Code nên đặt ở đâu cho phù hợp (trong Module hay trong Form? Private hay Public)
 
Lần chỉnh sửa cuối:
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom