۰۶-اردیبهشت-۱۳۸۸, ۱۱:۲۱:۲۹
صفحهها: 1 2
۰۶-اردیبهشت-۱۳۸۸, ۱۴:۴۷:۵۴
سلام فرید جان
من تونستم با کمک شما مشکلمو حل کنم اسمو بنیوسم و cursor بره ته خط اما یه مشکلی هست اینکارو با روشی که نوشتم تونستم انجام بدم
اما متاسفانه مثلا بنیویسی سلام amin دیگه نمیتونه حدس بزنه ولی بنیویسی amin سلام جواب میده یعنی فقط میتونه اول کمبو باکس حروف را مقایسه کنه دیگه وسط کمبو باکس نمیتونه بعد اگر اسم مورن نظر تو لیست باکس نباشه ودکمه tab را بزنی همش پاک میشه هر چزی که تو کمبو باکس باشه
ممنون میشم راهنمایی کنید
من تونستم با کمک شما مشکلمو حل کنم اسمو بنیوسم و cursor بره ته خط اما یه مشکلی هست اینکارو با روشی که نوشتم تونستم انجام بدم
کد:
Private Sub text2_Change()
List1.ListIndex = SendMessage(List1.hwnd, LB_FINDSTRING, -1, ByVal text2.Text)
End Sub
Private Sub Timer1_Timer()
KeyResult = GetAsyncKeyState(9)
If KeyResult = -32767 Then
text2.Text = List1.Text
Timer7.Enabled = True
End If
End Sub
Private Sub Timer7_Timer()
Set ws = CreateObject("WScript.Shell")
text2.SetFocus
ws.SendKeys ("{end}")
Timer7.Enabled = False
End Sub
ممنون میشم راهنمایی کنید
۰۶-اردیبهشت-۱۳۸۸, ۱۵:۲۷:۳۰
خب یه IF بذار که اگه List1.Text="" اون موقع کار نکنه!!!!
۰۶-اردیبهشت-۱۳۸۸, ۱۵:۴۱:۱۹
کد:
Private Sub Timer1_Timer()
If List1.Text = "" Then Exit Sub
KeyResult = GetAsyncKeyState(9)
If KeyResult = -32767 Then
text2.Text = List1.Text
Timer7.Enabled = True
End If
End Sub
ممنون میشم راهنمایی کنی
۰۶-اردیبهشت-۱۳۸۸, ۱۷:۲۷:۴۲
اونو دیگه نمی تونی از API استفاده کنی! باید خودت یه loop بنویسی که دونه دونه item های توی لیست باکس رو با کمک دستور InStr چک کنه.
کاری که می خوای بکنی کار خوبی نیست. در همین حد کافیه. ولی می تونی با چیزی که گفتم بنویسی
کاری که می خوای بکنی کار خوبی نیست. در همین حد کافیه. ولی می تونی با چیزی که گفتم بنویسی
۰۷-اردیبهشت-۱۳۸۸, ۱۰:۲۸:۳۶
سلام
مرحله اصله کاری اینجاست یه راهنمایی کن فرید جان ممنون میشم
مرحله اصله کاری اینجاست یه راهنمایی کن فرید جان ممنون میشم
۰۷-اردیبهشت-۱۳۸۸, ۱۳:۲۹:۲۲
توی ویژوال بیسیک تابعی وجود داره به نام Instr، کارش پیدا کردن شباهت بین دو تا متن هستش.
مثال می زنم واست:
خب الان B توی A وجود داره!!!! حالا اگه ما بخوایم بفهمیم B کجای A هست از تابع Instr استفاده می کنیم. به این صورت:
جواب این دستور یه عدده که محل شروع B رو توی A نشون می ده. پس جوابش توی این مثال خاص می شه 7
حالا فرض کن B توی A وجود نداشت. اون موقع این تابع جواب 0 می داد. ما از همین موضوع استفاده می کنیم. اگه جواب این تابع 0 باشه، یعنی B توی A نیست و اگه عددی به جز 0 باشه یعنی B توی A وجود داره.
حالا بر می گردیم به سوالی که پرسیدی. قرار بود یه loop بنویسی و از تابع Instr توش استفاده کنی. کدی که می خوای یه چیزی شبیه اینه:
حالا وسط توی IF می تونی چیزی که می خوای رو بنویسی!!! با استفاده از توضیحاتی که توی پست های قبلی دادم و مخلوط کردنشون می تونی خودت دستوراتی که باید وسط IF بنویسی رو دربیاری
مثال می زنم واست:
کد:
A="salam doostane aziz"
B= "doost"
کد:
Instr(A,B)
حالا فرض کن B توی A وجود نداشت. اون موقع این تابع جواب 0 می داد. ما از همین موضوع استفاده می کنیم. اگه جواب این تابع 0 باشه، یعنی B توی A نیست و اگه عددی به جز 0 باشه یعنی B توی A وجود داره.
حالا بر می گردیم به سوالی که پرسیدی. قرار بود یه loop بنویسی و از تابع Instr توش استفاده کنی. کدی که می خوای یه چیزی شبیه اینه:
کد:
For i = 0 To List1.ListCount - 1
If InStr(combo1.Text, List1.List(i)) <> 0 Then
End If
Next
صفحهها: 1 2