PDA

View Full Version : سوال: جستجو در اطلاعات



Salar.Shayegan
سه شنبه 31 مرداد 1391, 13:52 عصر
سلام دوستان
اگر بخوام اطلاعات برنامه رو توی یک فایل متنی ذخیره کنم و بعدا بخوام برای دفعات بعدی اجرای برنامه اطلاعات رو فراخوان کنم و تغییرات بار قبل رو اجرا کنه باید چکار کنم؟

برای مثال یک فایل متنی حاوی اطلاعات موقعیت پنجره ی برنامه در اسکرین - طول و عرض صفحه ی برنامه - رنگ زمینه و ... باشه و هربار اجرای برنامه اطلاعات به روز رسانی بشن.
مثلا متن فایل متنی این باشه:


Width: 127
Height: 406
X: 1003
Y: 1704
BackColor: Blue

m.4.r.m
سه شنبه 31 مرداد 1391, 14:02 عصر
شما در موقع فعال شدن فرم میای فایل رو باز می کنی با دستور open# بعد از اینکه باز کردی میای میگی : form1.width برابر با خط اول فایل متنی . و به نظر من شما فقط اعداد رو ذخیره کن یعنی width و اینارو ذخیره نکن فقط اعداد مربوط رو ذخیره کن تا راحت بتونی ست کنی . به همین راحتی

مهرداد صفا
سه شنبه 31 مرداد 1391, 14:11 عصر
سلام دوستان
اگر بخوام اطلاعات برنامه رو توی یک فایل متنی ذخیره کنم و بعدا بخوام برای دفعات بعدی اجرای برنامه اطلاعات رو فراخوان کنم و تغییرات بار قبل رو اجرا کنه باید چکار کنم؟

برای مثال یک فایل متنی حاوی اطلاعات موقعیت پنجره ی برنامه در اسکرین - طول و عرض صفحه ی برنامه - رنگ زمینه و ... باشه و هربار اجرای برنامه اطلاعات به روز رسانی بشن.
مثلا متن فایل متنی این باشه:


Width: 127
Height: 406
X: 1003
Y: 1704
BackColor: Blue






سلام
برای نوشتن:

Dim FileSystem As Object
Dim TextStream As Object
Set FileSystem = CreateObject("scripting.filesystemobject")
Set TextStream = FileSystem.CreateTextFile(App.Path & "\settings.ini", True)
TextStream.WriteLine ("Width: 127")
TextStream.WriteLine ("Height: 406")
TextStream.WriteLine ("...")
TextStream.Close
Set TextStream = Nothing
Set FileSystem = Nothing

و برای خواندن:

Dim FileSystem As Object
Dim TextStream As Object
Set FileSystem = CreateObject("scripting.filesystemobject")
Set TextStream = FileSystem.OpenTextFile(App.Path & "\settings.ini")
While TextStream.AtEndOfStream = False
NextLine = TextStream.ReadLine()
Wend
'or
'AllText=TextStream.ReadAll()
TextStream.Close
Set TextStream = Nothing
Set FileSystem = Nothing

Salar.Shayegan
چهارشنبه 01 شهریور 1391, 14:54 عصر
ممنون
اینجا دو مشکل هست:
اول اینکه اگر اولین باره برنامه اجرا میشه پیام پیدا نکردن فایل میده.
دوم اینکه من میخوام با هر بار بسته شدن برنامه اطلاعات ذخیره بشن و دفعه ی بعدی همونها دوباره فراخوان بشن راه حلی ندارین؟

امین مستانی
چهارشنبه 01 شهریور 1391, 15:04 عصر
برای مشکل اولی میتونی اطلاعات پیش فرض قرار بدی

وبرای مشکل دومی میتونی در قسمت

Private Sub Form_Unload(Cancel As Integer)

End Sub

اطلاعات رو ذخیره کنی و موقع اجرا داخل دستور

Private Sub Form_Load()

End Sub

اطلاعات رو بخونی

Salar.Shayegan
چهارشنبه 01 شهریور 1391, 15:21 عصر
ممنون رویداد هاشو میدونستم کدشو نمیدونستم.
کدی که دوستمون لطف کردن برامون نوشتن عمل نمیکنه!

m.4.r.m
چهارشنبه 01 شهریور 1391, 16:04 عصر
بیا اینم اونی که می خواستی برات آمادش کردم