Fa نمايش نتايج دربرنامه ديگر

nazary2009

Member
سلام دوستان درنمونه پيوست شده دربرنامه aوقتي كلمهaliروجستجوميكنيم سه تانتيجه درsonglistنمايش داده ميشه باكليك برروي هركدام برنامه
viewفيلدمربوط به اون نتيجه رو نشون ميده اما اگه برروي نتيجه بعدي كه توي songlistاست كليك كنيم بازهم نتيجه اي كه واسه كلمه اولي نشون
داده رونشون ميده ممنون ميشم كمكم كنيد
 

پیوست ها

  • New Folder (3).zip
    685.3 کیلوبایت · بازدیدها: 44

nevercom

کاربر متخصص انجمن مولتی مدیا بیلدر
این کد مربوط به رویداد OnSelection شئ ListBox هست که در پروژه استفاده کردید:
[BASS]sql_query$='SELECT * FROM BOOk WHERE AuthorName LIKE "'+SelItemsArray$+'";'
PluginSet("SQL_Plugin","sql_query$")
PluginRun("SQL_Plugin","Query")
PluginGet("SQL_Plugin","Result$")
PluginGet("SQL_Plugin","Rows")
If (Rows>0) Then
For i=1 To Rows
record$=GetArrayItem(Results$,'#',i)
For j=1 To 3
field$[j]=GetArrayItem(record$,'|',j)
Next j
Next i
Else
Return()
End
line$[1]=field$[1]
line$[2]=field$[2]
line$[3]=field$[3]
filename$='C:\xx\File.txt'
For i=1 To 3
M = StrToFile(filename$,line$,TRUE,TRUE)
Next i
Run("C:\xx\View.exe","")[/BASS]
در خط اول از متغیر $SelItemsArray استفاده شده که ظاهراً قراره حاوی متن آیتم انتخاب شده باشه.
اما این متغیر جایی مقداردهی نشده.
از اونجایی که فایل دوم محتوا رو از اون فایل متنی میخونه و بر طبق این کد محتوای اون فایل متنی تغییری نمیکنه، طبیعی هست که هربار همون داده رو نمایش بده.
شما اول باید آیتم انتخاب شده در لیست باکس رو بدست بیارید:
[BASS]ListBoxGetSelectedItems("SongList","Selected$,Index$,#,TotalItems")
SelItemsArray$ = GetArrayItem(Selected$,#,1)[/BASS]
 

nazary2009

Member
سلام من كدي كه گفتيد درخط اولsonglistقراردادم اما بازم نتايج تكراري بود ميشه بيشتركمك كنيد
 

nevercom

کاربر متخصص انجمن مولتی مدیا بیلدر
من سازوکار پروژه ی شما یا منطق برنامه س View.exe رو نمیدونم.
فقط ایراد کد لیست باکس این بود که متن آستم انتخاب شده دریافت نمیشد
اون یکی از تصحیحاتی هست که باید اعمال بشه.
باید بررسی کنید ببینید بجز اون کجا مشکل داره
 

nazary2009

Member
سلام اين کد مربوط به رویداد OnSelection شئ ListBox هست که در پروژه استفاده کردم
کد:
If (Rows>0) Then
  For i=1 To Rows
    record$[i]=GetArrayItem(Results$,'#',i)
    For j=1 To 3
      field$[j]=GetArrayItem(record$[i],'|',j)
    Next j
  Next i
Else
  Return()
End
line$[1]=field$[1]
line$[2]=field$[2]
line$[3]=field$[3]
filename$='C:\xx\File.txt'
For i=1 To 3
  M = StrToFile(filename$,line$[i],TRUE,TRUE)
Next i
Run("C:\xx\View.exe","")
در اين قسمت ازكدبالا record$=GetArrayItem(Results$,'#',i) نتيجه جستجو شده در برنامه ذخيره ميشه حالا اگه من بخام نتيجه مربوط به ايتم انتخاب شده درsonglistذخيره بشه بايد چه كدي رو قراربدم
 
آخرین ویرایش توسط مدیر:

nevercom

کاربر متخصص انجمن مولتی مدیا بیلدر
کلاً مراحلی که باید انجام بشه رو بفرمایید (مثلاْ یک آیتم از ListBox انتخاب بشه - با دابل کلیل جستجو انجام بشه بر اساس آیتمی که انتخاب شده و...)
و چرا برای نمایش داده ها از یه برنامه ی دیگه استفاده کردید ؟

راستش من دقیق متوجه سوال نشدم چون واضح نگفته بودید، برای همین خواستم که هدفتون رو مرحله به مرحله بگید تا حداقل بدونیم منطق برنامه تون بر چه اساس هست.
 

nazary2009

Member
کلاً مراحلی که باید انجام بشه رو بفرمایید (مثلاْ یک آیتم از ListBox انتخاب بشه - با دابل کلیل جستجو انجام بشه بر اساس آیتمی که انتخاب شده و...)
و چرا برای نمایش داده ها از یه برنامه ی دیگه استفاده کردید ؟

راستش من دقیق متوجه سوال نشدم چون واضح نگفته بودید، برای همین خواستم که هدفتون رو مرحله به مرحله بگید تا حداقل بدونیم منطق برنامه تون بر چه اساس هست.

سلام من درواقع مي خوام يك نوع ديكشنري تخصصي بسازم كه( ديتابيس اون داراي 2فيلدباشه يكي كلمه ودومي معني)و مي خوام وقتي كاربردركادرمربوط به جستجو كلمه اي روواردكرددرsonglistكلماتي كه حروف مشابه رو داره ازديتابيس فراخواني بشه وكاربر باكليك برروي كلمه اي از songlistكه مدنظرش است دربرنامه اي ديگه اطلاعات مربوط به اون كلمه ازفيلدمعني فراخواني بشه
 

جدیدترین ارسال ها

بالا