PDA

View Full Version : لطفا مرا راهنمایی کنید !



Mahyar Es.
سه شنبه 24 مهر 1386, 23:34 عصر
با سلام خدمت همه دوستان من چگونه میتوانم وقتی در یک textbox کلمه ای تایپ میکنم مثلا AB لیست باکس حرکت کرده روی کلماتی قرار گیرد که با AB شروع میشوند الی آخر .... مثل یک فرهنگ لغت از راهنمایی شما ممنونم .

vahidm
سه شنبه 24 مهر 1386, 23:38 عصر
شما می تونید از طریق دستور sql زیر به راحتی این کار رو بکنید
Data1.RecordSource = "select * from [Total] where [id] like '" + Text1.Text + "*' "

DBGrid1.Refresh
Data1.Refresh
Total : نام جدول
id : نام فیلد

vahidm
سه شنبه 24 مهر 1386, 23:38 عصر
Data1.RecordSource = "select * from [Total] where [id] like '" + Text1.Text + "*' "


DBGrid1.Refresh

Data1.Refresh
البته اینم چپ به راستش

vahidm
سه شنبه 24 مهر 1386, 23:40 عصر
Data1.RecordSource = "select * from [Total] where [id] like '" + Text1.Text + "*' "
DBGrid1.Refresh
Data1.Refresh
البته اینم چپ به راستش

vahidm
سه شنبه 24 مهر 1386, 23:42 عصر
البته دوست عزیز یادم رفت کد بالارا چپ به راست کنم علامت "*" باید آخر دستور باشه

Mahyar Es.
چهارشنبه 25 مهر 1386, 00:35 صبح
منظور من این هست که وقتی مثلا تایپ میکنم M لیست باکس حرکت کرده وروی کلماتی قرار گیرد که با M شروع میشود و وقتی MN رو وارد کردم روی کلماتی قرار گیرد که با MN شروع میشود . ممنون از راهنمایی شما

Spate
چهارشنبه 25 مهر 1386, 02:12 صبح
دوست عزیز میتونی گزینه InLine Search رو جستجو کنی تا به جوابت برسی.
درضمن آقای وحید-ام واسه کد نوشتن از تگ کد نویسی استفاده کن تا مشکل چپ به راست یا بلعکس نداشته باشی(ببخشید جسارت میکنم)

Hossein Bazyan
چهارشنبه 25 مهر 1386, 10:50 صبح
منظور من این هست که وقتی مثلا تایپ میکنم M لیست باکس حرکت کرده وروی کلماتی قرار گیرد که با M شروع میشود و وقتی MN رو وارد کردم روی کلماتی قرار گیرد که با MN شروع میشود . ممنون از راهنمایی شما
سلام
دو سه باری من این سوال را جواب دادم . اینهم آخرین بار
من اطلاعات را روی Combo میخوانم
در خاصیت Keyup در ComboBox کد زیر را قرار بده

Static NoSelectText As String
Dim i As Long
Const RGBerror = 255
With cboTitle
If KeyCode = vbKeyUp Then Exit Sub
If KeyCode = vbKeyDown Then Exit Sub
If KeyCode = vbKeyLeft Then Exit Sub
If KeyCode = vbKeyRight Then Exit Sub
If KeyCode <> vbKeyBack Then
NoSelectText = Mid(.Text, 1, Len(.Text) - .SelLength)
Else
If NoSelectText <> "" Then
NoSelectText = Mid(NoSelectText, 1, Len(NoSelectText) - 1)
End If
End If
For i = 0 To .ListCount - 1
If UCase(NoSelectText) = UCase(Mid(.List(i), 1, Len(NoSelectText))) Then
.ListIndex = i
Exit For
End If
Next
.SelStart = Len(NoSelectText)
.SelLength = Len(.Text)
If .ListIndex = -1 Then
.BackColor = RGBerror
Else
.BackColor = &HFFC0C0 ' &HFFC0C0 ' vbWindowBackground
End If
End With

Mahyar Es.
چهارشنبه 25 مهر 1386, 20:58 عصر
با تشکر از همه دوستان

hrj1981
چهارشنبه 25 مهر 1386, 21:30 عصر
اینم شاید کمکت کنه

Mbt925
پنج شنبه 26 مهر 1386, 14:14 عصر
فکر کنم منظوره دوستمون این بود که یه TextBox دارن و یه ListBox و می خوان همزمان که توی TextBox یه متن وارد میشه داخل ListBox هم جستجو بشه و اگه چیزی شبیه به اون بود Highlight بشه.



Dim i as integer

For i=0 to List1.ListCount-1

IF Left ( List1.List(i) , Len(Text1.text) ) = Text1.text Then

List1.ListIndex=i

Exit For

End IF

Next

vahidm
پنج شنبه 26 مهر 1386, 14:38 عصر
دوست عزیزم شما این کدی که برات گذاشتم رو داخل خصوصیت change تکست قرار بده
و یک dbgrid رو فرمت قرار بده مشکلت حله
اگر نفهمیدی چطوریه اطلاع بده برنامه اش بگذارم

ali_habibi1384
یک شنبه 29 مهر 1386, 21:06 عصر
سلام دوستان؛
جواب سوال این دوستمون اینقدرا هم سخت نیست که شما فکر میکنید . شما میتونید توی رویداد changeکد زیر رو بنویسین :


Adodc1.Recordset.Filter = "( k like '" & Combo2.Text & "%')"

totfarangi
دوشنبه 30 مهر 1386, 12:57 عصر
اگر فقط همین مشکل را داری می تونی از findstring استفاده کنی
مثلا:listbox1.findstring(textbox1.text)i