Đánh giá chủ đề:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[Help] Tự động tìm kiếm và điền thông tin trong textbox, cách nhau dấu phẩy " ,"
#11
Mình mày mò theo gợi ý của bác maidinhdan thì cũng làm ra được cái file này nhưng vẫn bị lỗi ở chuỗi hiển thị chưa đúng. Mình không biết cách nào cắt các ký tự dư thừa khi gõ vào textbox để search. Các bạn có cách nào khắc phục thì hướng dẫn giùm nhé. Các bạn xem hình: 

[Hình: ScreenShot2016-03-04at10.24.16PM_1.png]

Maidinhdan có nói dùng combobox nhưng mình thấy chỉ có listbox là hiển thị đúng yêu cầu. Vì khi gõ từ khoá tìm kiếm, combobox nó sẽ tắt ngay cái drop down list nếu mất focus, còn listbox thì không. Có thể mình chưa biết cách khai thác hết thằng combobox này.
Bây giờ làm theo cách của bạn MTNQ xem sao.

Link file demo của mình: http://www.mediafire.com/download/yh83xj...chV1.accdb
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 maidinhdan
#12
Cách bác làm cũng gần giống với cách của MTNQ rùi   005

Theo MTNQ thì không nên dùng phím Tab để đưa focus xuống listbox vì người dùng hay sử dụng phím này để di chuyển sang điều khiển kế tiếp. Ta nên dùng vbKeyDown,vì phím này cũng dùng cho combobox

Phải chắc chắn khi txtSearch mất focus  thì cái lstTrieuChung cũng phải ẩn đi, vì khi ta  di chuyển sang điều khiển khác mà cái list vẩn nằm phơi ra đó thì kỳ lắm  038

Góp một tay với bác cho ra cái v1.1

SearchV1.1.rar

P/S: MTNQ đã thêm vào 30 000 bản ghi để test tốc độ, với v1.2 bác sẽ thấy tốc độ được cải thiện đáng kể  015
Chữ ký của MatTroiNguQuen Thời gian nước chảy... da mòn
Ngủ quên một chốc thấy còn bộ xương!
Reply
Những người đã cảm ơn ongke0711 , maidinhdan
#13
Đúng là v1.1 này nó gọn gàng hơn nhiều 007Thumbs_up Thumbs_up Thumbs_up
- Giải quyết được việc dư ký tự tìm kiếm. Tôi cứ lay hoay dòng code thay chuỗi cũ (xoá ký tự dư) + giá trị mới từ listbox nhưng cứ gặp lỗi "Cannot reference method..." khi control nó không focus, mà khi cho focus thì lại báo lỗi khác.
- Khi bấm Backspace để xoá cũng không gặp lỗi.
- Thao tác trơn tru.

Nhưng có 1 sự kiện nhỏ là khi Enter con trỏ chuột nó chạy đâu mất? Nếu hiện ở cuối chuỗi vừa thêm vào là tiện nhất thay vì hiện nay là phải click chuột lại vào khung textbox.

Tôi có lưu qua bản 2003 để mọi người có thể tham khảo và góp ý.
Search v1.1.mdb
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 maidinhdan
#14
(05-03-16, 01:36 PM)ongke0711 Đã viết: Nhưng có 1 sự kiện nhỏ là khi Enter con trỏ chuột nó chạy đâu mất? Nếu hiện ở cuối chuỗi vừa thêm vào là tiện nhất thay vì hiện nay là phải click chuột lại vào khung textbox.


(Ngồi gõ quá trời, không biết bấm nhầm phím nào mà bị mất sạch, giờ phải gõ lại điên cả người  030  )

Trên máy MTNQ thì nó "hiện ở cuối chuỗi vừa thêm vào", chắc phải test lại rùi  016

Ở V1.2 này đã chuyển sang mdb, tạo thêm 2 form: frmSearchV1_2 và frmSearchV1_2_1
table1 có hơn 60 000 bản ghi

1/frmSearchV1_2:
-Ngưng tìm kiếm khi KeyCode = vbKeyBack
-Sử dụng thuộc tính filter của ADO recordset để lọc dữ liệu (Không biết các bác như nào chứ  MTNQ thấy  filter của DAO recordset chậm hơn, trong trường hợp này lại có chút vấn đề với Unikey khi gõ TV )

2/ frmSearchV1_2_1:
-Chỉ tìm kiếm khi phím space (KeyCode = vbKeySpace = 32) được nhấn


Các bác xem và cho nhận xét nhé!

P/S: Chỉ mới 1 form mà code đã nhiều vậy rùi. Nếu code cho nhiều textbox trên form  và mỗi form  phải viết lại thì "tẩu hỏa nhập ma"  014
Nếu đưa lên class thì trên mỗi form chỉ cần 1 hoặc vài dòng lệnh thui  007
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Quên mất cái Demo:

http://www.mediafire.com/download/yagxva...chV1.2.rar
Chữ ký của MatTroiNguQuen Thời gian nước chảy... da mòn
Ngủ quên một chốc thấy còn bộ xương!
Reply
Những người đã cảm ơn ongke0711 , maidinhdan
#15
Up lại cái Demo
Lý do: fix một số lỗi

SearchV1.2-1.rar
Chữ ký của MatTroiNguQuen Thời gian nước chảy... da mòn
Ngủ quên một chốc thấy còn bộ xương!
Reply
Những người đã cảm ơn maidinhdan
#16
Sau khi test thì tôi thấy form 1.1 vẫn chạy nhanh hơn form 1.2 va 1.2.1.
Đối với form 1.2 và 1.2.1 thì tốc độ hiển thị nội dung filter nhanh hơn nhưng khi Enter cập nhật thì con trỏ xoay hơi bị lâu (1,2s). Thí dụ rõ nhất khi gõ ký tự "c" (có >7.000 records).

Nếu bạn MTNQ có thời gian thì chuyển thành class để anh em học hỏi nhé. Thank trước.
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


Có thể liên quan đến chủ đề
Chủ đề: Tác giả Trả lời: Xem: Bài mới nhất
  Tự động hiện Form khi loading hết thời gian ChiMai 1 18 5 Giờ trước
Bài mới nhất: ongke0711
  [Help] Chỉnh giúp Form thống kê hoanghai902 2 122 28-10-16, 06:15 PM
Bài mới nhất: hoanghai902
  [Help] Giúp đỡ về cách xóa nội dung trong một field nam8384 2 117 17-10-16, 08:43 PM
Bài mới nhất: toancvp
  [Hỏi] Sử dụng chuột giữa trong subform là report. toancvp 10 353 12-10-16, 01:01 AM
Bài mới nhất: toancvp
  Lọc theo điều kiện trong listbox Ranju 3 175 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ơ