ptlong04x1
Thành viên tích cực


- Tham gia
- 15/10/08
- Bài viết
- 1,031
- Được thích
- 1,531
- Nghề nghiệp
- Kỹ sư xây dựng
Text hiện hành trong editBox thì bạn "ghi nhớ" ở trong currText. Chỉ có 2 khả năng: hoặc bạn nhập vào editBox bằng code bằng cách gọi DoText, hoặc người dùng gõ / dán từ bộ nhớ (Ctrl+V). Người dùng gõ / dán thì bạn có EditBoxTextChanged.
Vậy thì thay
Mã:Sub EditBoxTextChanged(control As IRibbonControl, text As String) MsgBox text End Sub
bằng
Mã:Sub EditBoxTextChanged(control As IRibbonControl, text As String) currText = text End Sub
Và ở thời điểm bất kỳ thì đọc ở currText ra thôi. Tôi cố tình đặt biến là currText = current text, tức văn bản hiện hành mà
Dạ em cũng có nghĩ đến cách này, nhưng thấy hạn chế ở chỗ là nếu như trong quá trình chạy code mà phát sinh lỗi thì mấy cái biến toàn cục rb và currText nó cũng bị xoá mất luôn, nên đôi lúc gọi rb.InvalidateControl thì nó báo lỗi không tìm thấy object và currText nó cũng thành chuỗi rỗng trong khi EditBox vẫn có nội dung.
Lần chỉnh sửa cuối: