سلام دوستان
برنامه زير رو نوشتم و توي قسمت جستجوي اشتراك مشكل دارم لطف كنيد نگا كنيد كه مشكلم كجاست .
کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
سلام دوستان
برنامه زير رو نوشتم و توي قسمت جستجوي اشتراك مشكل دارم لطف كنيد نگا كنيد كه مشكلم كجاست .
کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
اين هم كدي رو كه واسه جستجو نوشتم ؟
Private Sub cmdsearch_Click()
Dim error As Boolean
fnum = FreeFile
Dim search As Integer
Open "F:\University\Vb\file\taxi\information.txt" For Random As #fnum
searchbox = InputBox("Enter Code?")
search = Int(searchbox)
Get #fnum, , taxirec.code
'Do While Not (EOF(fnum))
If search = taxirec.code Then
Get #fnum, , taxirec.code
Get #fnum, , taxirec.name
Get #fnum, , taxirec.address
Get #fnum, , taxirec.tel
Textcode.Text = taxirec.code
Textname.Text = taxirec.name
Textaddress.Text = taxirec.address
Texttel.Text = taxirec.tel
Textcode.SetFocus
Exit Sub
Else
error = True
End If
'Loop
Close #fnum
If error = True Then MsgBox "no fild"
End Sub
چرا اينجارو اينجوري نوشتين؟ تا جايي كه من ميدونم اگه از Get #fnum, , taxirec استفاده كني تمام اطلاعات مربوط به اون ركورد رو تو txirec ميريزه.
من برنامه شما رو نگاه کردم. چتدتا چیزو دقت نکرده بودین.
1- واسه کار با فایلهای Random باید Len رو در آخر دستوری که واسه باز کردن فایل هست وارد کنید:
2- تو ماژول که Type رو تعریف کردین باید متغییرهای String از نوع ثابت باشن:کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
3- شما چرا واسه گرفتن رکوردهای فیلدهاتون اینجوری کار کردین:کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
به جای اینا میتونستی از Get #fnum, taxirec.code, taxirec که تمام رکوردها رو تو taxirec میریزه استفاده کنی. (این واسه Put هم صادقه) کلا این نوع دریافت و نوشتن اصلاعات تو فایل برای فایلهای ترتیبی هست.کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
اینم اصلاح کد Serach:
کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
سلام دوستان برنامه رو نوشتم (البته يه دفتر تلفن )
private sub cmdsearch_click()
stpath = app.path & "informationtel.txt"
if dir(stpath) <> "" then
lenghtrecord = filelen(stpath) / len(telrec)
end if
dim no as boolean
no = false
open stpath for random access read as #1
searchbox = trim(inputbox("plase enter name"))
for i = 1 to lenghtrecord
get #1, , telrec
if (searchbox = telrec.name1) then
text1.text = telrec.name1
text2.text = telrec.famil
text3.text = telrec.tel
text4.text = telrec.emaile
text5.text = telrec.web
close
exit sub
else
no = true
end if
next
if no = true then msgbox "no fild"
close
end sub
هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)