• Vui lòng đọc nội qui diễn đàn để tránh bị xóa bài viết
  • Tìm kiếm trước khi đặt câu hỏi

Kết quả tìm như Listbox của Google

Các mẹo vặt linh tinh khác, không thuộc nhóm nào
Hình đại diện của người dùng
truongphu
VIP
VIP
Bài viết: 4756
Ngày tham gia: CN 04/11/2007 10:57 am
Đến từ: Cam Đức, Khánh hòa
Has thanked: 14 time
Been thanked: 509 time

Kết quả tìm như Listbox của Google

Gửi bàigửi bởi truongphu » T.Tư 14/04/2010 2:21 pm

Thủ thuật: Kết quả tìm như Listbox của Google
Tác giả: truongphu
Mô tả: Kết quả tìm như Listbox của Google



Vấn đề nầy nhiều bạn đề cập: làm sao khi gõ ký tự trên textbox thì listbox bên dưới xổ xuống danh sách các từ có trong CSDL thích hợp với nội dung textbox
Tôi có viết bài nầy hôm qua ở box thắc mắc, giờ trau chuốt lại cho tuyệt hơn:

1- CSDL đi kèm tạm thời có nhóm chữ khởi đầu ký tự a
1.JPG
1.JPG (16.05 KiB) Đã xem 3633 lần


2- Gõ tiếp
2.JPG
2.JPG (12.52 KiB) Đã xem 3633 lần


3- Khi gõ nhiều thêm: listbox tự thu ngắn theo danh sách cô đọng
khi chỉ còn 1 record, nếu record trong listbox nầy vẫn khác với textbox, listbox vẫn hiện.
ngược lại, nếu nội dung trùng nhau, listbox tự động biến mất

4- Đương nhiên ta có thể chọn record bất kỳ trong listbox: textbox sẽ nhận ngay kết quả và listbox biến mất
5- và nếu gõ các ký tự không có trong csdl: listbox đương nhiên không hiện ra

6- Code như sau:
  1. Dim conn As New Connection
  2. Dim Rec As New Recordset
  3.  
  4. Private Sub Form_Load()
  5. conn.Open "Provider = Microsoft.Jet.OLEDB.4.0;Data Source = " & App.Path & "\db1.mdb"
  6. End Sub
  7.  
  8. Private Sub List1_Click()
  9. Text1 = List1.Text
  10. List1.Visible = False
  11. End Sub
  12.  
  13. Private Sub Text1_Change()
  14. If Text1 = "" Then
  15.     List1.Visible = False
  16.     Exit Sub
  17. Else
  18.     List1.Clear
  19.     If Rec.State = 1 Then Rec.Close
  20.     Rec.Open "SELECT * FROM Table1 WHERE TênSP LIKE '" & Text1 & "%'", conn, 3, 3
  21.     If Rec.RecordCount = 0 Then
  22.         List1.Visible = False
  23.         Exit Sub
  24.     ElseIf (Rec.RecordCount = 1) And (UCase(Rec!TênSP) = UCase(Text1)) Then
  25.         List1.Visible = False
  26.         Exit Sub
  27.     Else
  28.         Do While Not Rec.EOF
  29.             List1.AddItem Rec!TênSP
  30.             Rec.MoveNext
  31.         Loop
  32.         List1.Height = List1.ListCount * 250
  33.         List1.Visible = True
  34.     End If
  35. End If
  36. End Sub
  37.  


7- Download project tham khảo. các bạn có thể bổ sung csdl và trình bày project lại theo ý riêng
Tập tin đính kèm
Search String.rar
(8.59 KiB) Đã tải 1055 lần


o0o--truongphu--o0o

.........
Ghé thăm:
Chuyện Linh Tinh

hiensaigon
Thành viên năng nổ
Thành viên năng nổ
Bài viết: 52
Ngày tham gia: CN 25/12/2011 12:48 pm
Has thanked: 15 time

Re: Kết quả tìm như Listbox của Google

Gửi bàigửi bởi hiensaigon » T.Ba 22/01/2013 11:49 pm

cách add file .mdb vào form như thế nào vậy anh,??

thanhphongialy
Thành viên chính thức
Thành viên chính thức
Bài viết: 12
Ngày tham gia: CN 29/04/2012 9:03 am
Been thanked: 3 time

Re: Kết quả tìm như Listbox của Google

Gửi bàigửi bởi thanhphongialy » T.Sáu 18/04/2014 9:10 am

Chào Bác truongphu!
Xin hỏi: với data la tiếng việt unicode thì có cách nào không ?
xin gợi ý cho!
cảm ơn!

zippoo
Thành viên chính thức
Thành viên chính thức
Bài viết: 12
Ngày tham gia: CN 21/06/2015 3:48 pm
Has thanked: 1 time
Been thanked: 2 time

Re: Kết quả tìm như Listbox của Google

Gửi bàigửi bởi zippoo » T.Sáu 17/07/2015 8:37 pm

em sử dụng code của a truongphu thì bị lỗi như trong hình thế này. mọi người chỉ mình với. file *.mdb dùng thế nào vậy mấy a. mong hồi âm từ mọi người cám ơn nhìu.

http://uphinhnhanh.com/view-6003966_1.jpg

Hình ảnh

opla2014
Bài viết: 4
Ngày tham gia: T.Hai 22/08/2016 4:02 pm
Has thanked: 1 time

Re: Kết quả tìm như Listbox của Google

Gửi bàigửi bởi opla2014 » T.Hai 22/08/2016 4:22 pm

cảm ơn tác giả.
mình muốn hỏi thêm:
1. mình muốn thêm 1 nút bấm: "hiển thị chi tiết" ở bên cạnh
2. sau khi tìm kiếm xong được 1 kết quả sẽ bấm vào " hiển thị chi tiết"
3. 1 form xuất hiện với thông tin chi tiết lấy từ trong csdl access tương ứng với kết quả tìm kiếm được.
4. form chi tiết giống hệt nhau( chỉ thiết kế 1 form) các dữ liệu trong các trường tương ứng ở form được lấy tương ứng từ csdl.
cảm ơn rất nhiều!
Re: mình ko phải dân chuyên VB6, mình có ý định viết 1 phần mềm tặng nhóc nhà mình nên tự mày mò, đến đoạn này thì tịt mất.
mình đính kèm dự án của mình để chủ topic và các bạn tư vấn và hỗ trợ mình nhé.
Tập tin đính kèm
VB.rar
(699.46 KiB) Đã tải 70 lần


Quay về “[VB] Mẹo vặt khác”

Đang trực tuyến

Đang xem chuyên mục này: Không có thành viên nào trực tuyến.2 khách