امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
ذخيره اندازه فرم با استفاده از ريجستري
نویسنده پیام
tanhatarin آفلاین
كاربر دو ستاره
**

ارسال‌ها: 102
موضوع‌ها: 11
تاریخ عضویت: تير ۱۳۸۵

تشکرها : 0
( 5 تشکر در 5 ارسال )
ارسال: #1
ذخيره اندازه فرم با استفاده از ريجستري
سلام
مي بخشيد اگه اين موضوع احتمالا مربوط به اين بخش نيست.
با اين دستور بعد از بستن فرم اندازه فرم در ريجستر ذخيره ميشه و هنگام باز كردن فرم اندازه اي كه فرم موقع بستن داشت نمايش داده ميشه.
البته براي دوستاني كه كار با ريجستري رو دوست دارن هم آموزش خيلي خوبيه.
اگه سوالي در موردش داشتين خوشحال ميشم جواب بدم.

Private Sub Form_Load()

On Error GoTo ErrHandler

retvalue = GetSetting(1, 3, "Runcount")
dD$ = (retvalue)
If dD$ = "3" Then
Me.WindowState = 2
Else


retvalue = GetSetting(1, 1, "Runcount")
dD$ = (retvalue)
Me.Width = dD$

retvalue = GetSetting(1, 2, "Runcount")
dD$ = (retvalue)
Me.Height = dD$
End If

ErrHandler:

If Err.Number Then

retvalue = GetSetting(1, 1, "Runcount")
dD$ = Me.Width
SaveSetting 1, 1, "RunCount", dD$

retvalue = GetSetting(1, 2, "Runcount")
dD$ = Me.Height
SaveSetting 1, 2, "RunCount", dD$
If Me.WindowState = 2 Then
retvalue = GetSetting(1, 3, "Runcount")
dD$ = "3"
SaveSetting 1, 3, "RunCount", dD$
Else
retvalue = GetSetting(1, 3, "Runcount")
dD$ = "0"
SaveSetting 1, 3, "RunCount", dD$

End If


Else

retvalue = GetSetting(1, 3, "Runcount")
dD$ = (retvalue)
If dD$ = "3" Then
Me.WindowState = 2
Else


retvalue = GetSetting(1, 1, "Runcount")
dD$ = (retvalue)
Me.Width = dD$

retvalue = GetSetting(1, 2, "Runcount")
dD$ = (retvalue)
Me.Height = dD$
End If


End If


retvalue = GetSetting(1, 3, "Runcount")
dD$ = (retvalue)
If dD$ = "3" Then
Me.WindowState = 2
Else


retvalue = GetSetting(1, 1, "Runcount")
dD$ = (retvalue)
Me.Width = dD$

retvalue = GetSetting(1, 2, "Runcount")
dD$ = (retvalue)
Me.Height = dD$
End If

End Sub
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
retvalue = GetSetting(1, 1, "Runcount")
dD$ = Me.Width
SaveSetting 1, 1, "RunCount", dD$

retvalue = GetSetting(1, 2, "Runcount")
dD$ = Me.Height
SaveSetting 1, 2, "RunCount", dD$
If Me.WindowState = 2 Then
retvalue = GetSetting(1, 3, "Runcount")
dD$ = "3"
SaveSetting 1, 3, "RunCount", dD$
Else
retvalue = GetSetting(1, 3, "Runcount")
dD$ = "0"
SaveSetting 1, 3, "RunCount", dD$

End If

End Sub

به نا اميدي از اين در مرو، بزن فالي
بود كه قرعه دولت به نام ما افتــــــد
۱۲-اسفند-۱۳۸۶, ۱۸:۱۹:۱۸
ارسال‌ها
پاسخ
hamed_Arfaee آفلاین
مدیر بخش
*****

ارسال‌ها: 1,334
موضوع‌ها: 231
تاریخ عضویت: تير ۱۳۸۳

تشکرها : 1250
( 2634 تشکر در 730 ارسال )
ارسال: #2
RE: ذخيره اندازه فرم با استفاده از ريجستري
دستت درد نكنه ولي چرا اينهمه كد ؟
با چهار خط ميشه همه اين كار ها رو انجام داد
کد:
Private Sub Form_Load()
Me.Top = GetSetting("Pname", "Top", Me.Name, 0)
Me.Left = GetSetting("Pname", "Left", Me.Name, 0)
End Sub
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
SaveSetting "Pname", "Top", Me.Name, Me.Top
SaveSetting "Pname", "Left", Me.Name, Me.Left
End Sub
البته اينجا من فقط محل قرار گيري فرم رو ذخيره كردم
كه ميشه ابعادش رو هم ذخيره كرد

حامد ارفعی

موفقيت، پيش رفتن است، نه به نقطه ي پايان رسيدن.(آنتوني رابينز)


تریگرها در SQL server

آیا میدانید SQL ای
(آخرین ویرایش در این ارسال: ۱۳-اسفند-۱۳۸۶, ۰۲:۵۶:۲۸، توسط hamed_Arfaee.)
۱۳-اسفند-۱۳۸۶, ۰۱:۰۰:۱۵
وب سایت ارسال‌ها
پاسخ
alaska آفلاین
عضو افتخاری
****

ارسال‌ها: 591
موضوع‌ها: 65
تاریخ عضویت: دى ۱۳۸۶

تشکرها : 3841
( 2520 تشکر در 474 ارسال )
ارسال: #3
RE: ذخيره اندازه فرم با استفاده از ريجستري
دستت درد نكنه حامد خان
خيلي به درد خورد

فکر کن آنگاه سخن بگو تا از لغزش و خطا مصون باشی .
امیرمومنان علی (ع)
۱۳-اسفند-۱۳۸۶, ۰۲:۲۱:۵۴
ارسال‌ها
پاسخ
tanhatarin آفلاین
كاربر دو ستاره
**

ارسال‌ها: 102
موضوع‌ها: 11
تاریخ عضویت: تير ۱۳۸۵

تشکرها : 0
( 5 تشکر در 5 ارسال )
ارسال: #4
RE: ذخيره اندازه فرم با استفاده از ريجستري
سلام
دستور شما فقط محل قرار گرفتن فرم رو ذخيره مي كنه، اين با اندازه فرم فرق مي كنه.
1- براي اولين بار كه برنامه روي يك سيستم ديگه ران ميشه آدرس ريجستري كه برنامه مي خواد اندازه رو از روش بخونه خاليه !!!
2- اگه كاربر فرم رو در حالت ماكزيمم ببنده !!!
3- در ويژوال در هر مرحله اي لازمه كه جلوي هر ارر احتمالي گرفته بشه .
4- يك بار برنامه رو در حالتي كه ميني مايز هست ببنديد . بعد دوباره برنامه رو ران كنيد. چه اتفاقي ميفته ؟؟؟؟
بخاطر اين سه مورد دستور من چند خطي بيشتره.

به نا اميدي از اين در مرو، بزن فالي
بود كه قرعه دولت به نام ما افتــــــد
(آخرین ویرایش در این ارسال: ۱۴-اسفند-۱۳۸۶, ۱۵:۱۵:۰۱، توسط tanhatarin.)
۱۴-اسفند-۱۳۸۶, ۱۵:۰۰:۲۸
ارسال‌ها
پاسخ
hamed_Arfaee آفلاین
مدیر بخش
*****

ارسال‌ها: 1,334
موضوع‌ها: 231
تاریخ عضویت: تير ۱۳۸۳

تشکرها : 1250
( 2634 تشکر در 730 ارسال )
ارسال: #5
RE: ذخيره اندازه فرم با استفاده از ريجستري
tanhatarin نوشته است:سلام
دستور شما فقط محل قرار گرفتن فرم رو ذخيره مي كنه، اين با اندازه فرم فرق مي كنه.
1- براي اولين بار كه برنامه روي يك سيستم ديگه ران ميشه آدرس ريجستري كه برنامه مي خواد اندازه رو از روش بخونه خاليه !!!
2- اگه كاربر فرم رو در حالت ماكزيمم ببنده !!!
3- در ويژوال در هر مرحله اي لازمه كه جلوي هر ارر احتمالي گرفته بشه .
4- يك بار برنامه رو در حالتي كه ميني مايز هست ببنديد . بعد دوباره برنامه رو ران كنيد. چه اتفاقي ميفته ؟؟؟؟
بخاطر اين سه مورد دستور من چند خطي بيشتره.
حرف شما متين ولي
وقتي اطلاعات از رجيستري خونده ميشه اگه نبود اطلاعات پيش فرض برگشت داده ميشه يعني 0 پس در مختصات 0.0 باز ميشه

و آخر پستم هم گفتم كه فقط مختصات رو ذخيره م يكنه كه با عوض كردن دو تا تابع ميشه اندازه رو ذخيره كرد
اگر ماكزيمم ببنده مشكلي پيش نمياد چون فرم د رمختصات 0.0 بسته ميشه
برا مي ني مايز حق با شماست ولي خيلي بهتر از اين ميشه تعريف كرد مثلا موقع بستن فرم به حالت عادي برگرده بعد بسته بشه هم بهتر مي شه هم مختصات دستنيافتني از بين ميره
وخطا فكر نكنم باشه

و در ضمن منظور من از اين همه كد پيچيدگيش بود نه اضافه بودنشون Confused

در اخر از شما تشكر ميكنم به خاطر مطلب كاربرديتونHeart

حامد ارفعی

موفقيت، پيش رفتن است، نه به نقطه ي پايان رسيدن.(آنتوني رابينز)


تریگرها در SQL server

آیا میدانید SQL ای
۱۴-اسفند-۱۳۸۶, ۱۸:۰۵:۲۵
وب سایت ارسال‌ها
پاسخ
tanhatarin آفلاین
كاربر دو ستاره
**

ارسال‌ها: 102
موضوع‌ها: 11
تاریخ عضویت: تير ۱۳۸۵

تشکرها : 0
( 5 تشکر در 5 ارسال )
ارسال: #6
RE: ذخيره اندازه فرم با استفاده از ريجستري
سلام حامد جان
من متوجه منظورتون شدم و مي خواستم بگم كه اين دو برنامه درسته كه يه جور كار مي كنن ولي باهم تفاوتهايي هم دارن.
منظور من از مورد اول (باز كردن برنامه در يك سيستم ديگه ) در مورد اندازه فرم بود نه محل قرار گيريش.مطمئنا فرمي كه طول و عرضش صفر باشه هيچ وقت باز نميشه ( ارر مي ده ).
فكر مي كنين اگه همين برنامه رو براي حالت ميني مايز و ماكزيمم هم تعريف كنيد چند خط ديگه بايد اضافه كني؟
موفق باشي .

به نا اميدي از اين در مرو، بزن فالي
بود كه قرعه دولت به نام ما افتــــــد
۱۵-اسفند-۱۳۸۶, ۰۸:۵۱:۴۳
ارسال‌ها
پاسخ


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
Exclamation ذخيره تصوير با كنترل ADODC mhlogo 5 5,277 ۲۶-شهریور-۱۳۹۱, ۰۵:۱۱:۱۰
آخرین ارسال: babyy
  مشكل ذخيره و مقايسه تاريخها به صورت شمسي NabiKAZ 16 17,965 ۲۳-اسفند-۱۳۹۰, ۰۰:۱۵:۳۶
آخرین ارسال: ahoo_tanha2012
  [سوال] مشكل در ذخيره و ذخيره مجدد فايل restles20 9 5,871 ۲۸-آبان-۱۳۹۰, ۱۱:۴۸:۰۹
آخرین ارسال: restles20
  اندازه فرم esmaeil21 4 4,635 ۳۱-تير-۱۳۹۰, ۱۷:۴۸:۳۶
آخرین ارسال: Shayani
  ذخيره كردن متن داخل تكس باكس محمدعلي 1 2,709 ۰۳-فروردین-۱۳۸۹, ۰۲:۰۰:۳۹
آخرین ارسال: CRazYFULL
Question تغییر اندازه ی صفحه toopdanlod 4 3,383 ۲۲-آذر-۱۳۸۸, ۱۱:۰۷:۲۱
آخرین ارسال: toopdanlod
  تغییر اندازه کامپوننتها به هنگام تغییر اندازه فرم siana_k1980 10 8,113 ۲۱-شهریور-۱۳۸۸, ۰۳:۴۰:۳۷
آخرین ارسال: 1120
  مشكل ذخيره عكس reza87 2 2,322 ۰۶-مرداد-۱۳۸۸, ۱۱:۵۴:۳۲
آخرین ارسال: vblove
  متوجه شدن تغییر اندازه فایل kimiafars 7 4,458 ۳۰-تير-۱۳۸۸, ۱۳:۴۰:۰۰
آخرین ارسال: kimiafars
  تغییر اندازه خط بعد از اجرا mehrdad12 5 4,040 ۱۶-آبان-۱۳۸۷, ۲۳:۵۵:۲۵
آخرین ارسال: mehrdad12

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 2 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS