نمایش اطلاعات دیتابیس در پلاگین UO (ListView)

mmb4us

Member
دوستان سلام
ممنون میشم در مورد چند سوال راهنماییم کنید ...
1- من تونستم اطلاعات دیتابیس رو تو پلاگین UO (ListView) به نمایش در بیارم اما یه مشکلی هست اینه که وقتی برنامه در حال اجرا شدنه وبخوام رکورد های جدیدی رو به دیتابیس اضافه کنم اون رکوردهای جدید توی پلاگین UO (ListView) به نمایش در نمیان ولی اگه یه دفعه از برنامه خارج بشم و دوباره وارد برنامه بشم آخرین رکورد های اضفه شده رو به من نمابش میده . ( مشکل از کجاست ؟ )

2- چطوری می تونیم بعد از این که بر روی یه رکورد کلیک کنیم اطلاعات فیلد هاش رو تو چند تا EditBox به نمایش در بیاره؟

تو یکی از پست های یکی از دوستان این کد رو پیشنهاد داده بودند ولی من نتونستم ازش استفاده کنم ( از دوستان خواهش دارم که اگه می تونند من رو راهنمایی کنند )

** get items
str$ = ''
PluginRun("UO","LVGetSelIndex")
PluginGet("UO","sel")
For i=1 To 3
PluginSet("UO","sel")
PluginSet("UO","i")
PluginRun("UO","LVGetCell")
PluginGet("UO","get$")
str$ = str$ + get$ + '#'
Next i
** Load items in texts
temp$ = GetArrayItem(str$,'#',1)
LoadText("T1","temp$")
temp$ = GetArrayItem(str$,'#',2)
LoadText("T2","temp$")
temp$ = GetArrayItem(str$,'#',3)
LoadText("T3","temp$")


3- با چه کدی میشه نتایج جستجو رو تو UO (ListView) به نمایش در آورد؟

4- می خواستم بدونم که آیا راهی هست که اطلاعات فارسی فراخوانی شده از دیتابیس ، در پلاگین UO (ListView) رو درست نشون بده ( چون الان درهم ریخته است )


بنده فایلی که روش کار کردم ضمیمه کردم شاید که باشد بهتر من رو راهنمایی کنید

پیشاپیش بخاطر راهنمایی هاتون یک دنیا ممنون
 

پیوست ها

  • UO.rar
    1.1 مگایابت · بازدیدها: 79

nevercom

کاربر متخصص انجمن مولتی مدیا بیلدر
1- من تونستم اطلاعات دیتابیس رو تو پلاگین UO (ListView)به نمایش در بیارم اما یه مشکلی هست اینه که وقتی برنامه در حال اجرا شدنه وبخوام رکورد های جدیدی رو به دیتابیس اضافه کنم اون رکوردهای جدید توی پلاگین UO (ListView) به نمایش در نمیان ولی اگه یه دفعه از برنامه خارج بشم و دوباره وارد برنامه بشم آخرین رکورد های اضفه شده رو به من نمابش میده . ( مشکل از کجاست ؟ )
اگر پس از درج اطلاعات در دیتابیس، بیاید و محتویات لیست ویوو رو خالی کنید و دوباره اطلاعات دیتابیس رو بریزید درون این شئ باید مشکلتون حل بشه.

در مورد سوال دومتون هم فکر کنم نسخه ی جدید این پلاگین Event (رویداد)ی برای Click - Double Click داره، که میتونید توی این رویدادها دستور گرفتن متن درون اون سلول رو بدید و درون EditBox نمایشش بدید
 

mmb4us

Member
جناب
nevercom عزیز سلام . ممنون از اینکه جوابمو دادی

همونطور که شما گفتید ، من محتویات لیست ویو رو خالی کردم

با دستور :​

PluginRun("UO","LVClear")
و دوباره اطلاعات دیتابیس رو تو لیست ویو نشان دادم اما مشکلم حل نشد

ممنون میشم دستورش رو برام بگی

بعد هم یه مشکل دیگه اون هم اینکه چرا وقتی به صفحه های بعدی میریرم لیست ویو تو همشون هست . ایا میشه کاری کرد که دیگه تو صفحه های جلوتر ظاهر نشه

 

Free Man

کاربر متخصص مولتی مدیا بیلدر
با سلام،

برای ظاهر نشدن پلاگین در صفحه ی مورد نظر ، تابع Hide را صدا بزنید
کد:
PluginRun("UO","Hide")

PluginRun("UO","Show")

در مورد نشان دادن تغییرات بانک داده ، باید توجه کنید که ListView چیزی را نمایش میدهد

که به آن وارد کرده اید ، پس ممکن است تغییرات را ذخیره نکرده اید و یا به خوبی اطلاعات را وارد نمیکنید.

بعد از هر تغییر در یک جدول، باید مجدد جدول مورد نظرتان را بخوانید.

در کل، اگر بخوبی نمونه برنامه ی همراه با پلاگین UO ListView را مطالعه می کردید ، به پاسخ اکثر سوالهایتان می رسیدید.
 

mmb4us

Member
در مورد سوال دومتون هم فکر کنم نسخه ی جدید این پلاگین Event (رویداد)ی برای Click - Double Click داره، که میتونید توی این رویدادها دستور گرفتن متن درون اون سلول رو بدید و درون EditBox نمایشش بدید

دوست عزیز سلام

می خواستم لطف کنین لینک نسخه ی جدید ش رو برام بزاری

و اگه می تونید یکم بیشتر در مورد این Event که برای Click - Double Click هست توضیح بدین.

پیشاپیش بخاطر راهنمایی هاتون ممنون
 

محمدمهدی

Well-Known Member
درخواست از آقا FreeMan

سلام آقای FreeMan
ضمن تشکر از ارائه پلاگین خیلی خیلی عالیتون. و یه تشکر دیگه به خاطر BeginUpdate و EndUpdate
می خواستم چند تا از خصوصیاتی که به نظرم می تونه این پلاگین رو کامل بکنه رو خدمتتون بگم و خواهش کنم که اگه میشه تا این هفته فقط یه موردش رو که همون گزینه ی اول هست رو قرار بدید.

1. امکان RightToLeft کردن کل لیست و یا یک ستون و یا یک قسمت.(خلاصه اینکه بشه به نحوی متن داخل پلاگین رو RightToLeft کرد که وقتی انگلیسی و فارسی با هم قاطی میشه مشکل پیش نیاد.)

2. امکان لود کردن چند خط. با یک دستور. مثلا شبیه قانون csv:
item1-1;item2-1;item3-1
item2-1;item2-2;item2-3

3. امکان گرفتن کل لیست به صورت یکجا با یک دستور بازهم به نظرم به صورت بالا

4. امکان تغییر و گرفتن img یک row (بدون حذف و insert مجدد اون گزینه)

5. اگه میشه امکان searchی که گذاشتین رو کامل کنید. با این خصوصیات که:
- index شروع رو برای سرچ بدیم.
- یا اینکه تمام index هایی که حاوی این کلمه هستن رو در یک متغیر به ما بده
- column سرچ رو به ما بده.

6. بشه اندازه ستون ها رو قفل کرد.

7. وقتی که ListView رو MultiSelect می کنیم دیگه چطور میشه گزینه های که Select شدن رو در یافت کنیم؟ من راه حلی پیدا نکردم. و در این مورد هیچ کدام از گزینه هایی که مربوط به SelectItem هست(به جز CountSelect) کار نمیکنه. لطفا اگر راه حلی نداره این رو هم تعبیه بفرمایید.
__________________________

در ضمن لطفا اگر راه حل دیگه ای هست که بشه کل لیست و یا یک قسمتی رو RightToLeft کرد بگید تا انجام بدم و مزاحمتون نشم. چون من کاراکتر RightToLeft که chr(254) هست رو امتحان کردم و نشد. کارکتر های unicode هم به خورد mmb نمیره حتی کل پنجره mmb رو RightToLeft کردم که اصلا پلاگین در اون صورت اجرا نمیشه و حتی گشتم دنبال ID اون پنجره که با nircmd اون رو righttoleft کنم که dll اصلی ListView رو پیدا نکردم.

باتشکر.
(باید ببشخید، من این مطلب رو توی پست همون پلاگینم گذاشتم اما گفتم شاید نبینید)
 
آخرین ویرایش:

mmb4us

Member
با سلام،


در مورد نشان دادن تغییرات بانک داده ، باید توجه کنید که ListView چیزی را نمایش میدهد

که به آن وارد کرده اید ، پس ممکن است تغییرات را ذخیره نکرده اید و یا به خوبی اطلاعات را وارد نمیکنید.

بعد از هر تغییر در یک جدول، باید مجدد جدول مورد نظرتان را بخوانید.


جناب FREE MAN سلام

می خواستم بدونم که چه جوری می تونیم بعد از هر تغییر در یک جدول، مجددا جدول مورد نظر را خواند

من تونستم کارمو راه بندازم ، به این ترتیب که بعد از ثبت اطلاعات به یک
صفحه ی دیگه بره و بعددر PAGE Script اون صفحه بازگشت به صفحه ی اول دادم ولی خیلی جالب نیست چون بعد، هنگام لود شدن اطلاعات پلاگین UO یه لرزشی داره(نمی دونم چجوری خدمتون عرض کنم خلاصه خیلی جالب نیست)

می خواستم بدونم که شما چه راه حلی پیشنهاد می کنید

 

Free Man

کاربر متخصص مولتی مدیا بیلدر
سلام ،

مشکل شما در کدهایی است که برای ارتباط با بانک داده نوشته اید (چه زمانی لود کند جداول بانک داده را و آیا رویدادی تعریف کرده اید که با

تغییر دادن اطلاعات آنها را Reload کند)

بهتر است پاسختان را دوستانی دهند که تخصص و تجربه ی زیادی در کار با بانک داده دارند.

من تجربه ی زیادی در مورد ارتباط ام ام بی و بانک های داده ندارم.

پیشنهاد می کنم نمونه برنامه ی خود را قرار دهید تا در مورد آن دوستان عزیز بتوانند بهتر راهنمایی تان کنند.

موفق باشید.
 

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

بالا