باسلام
برای بدست آوردن رزولیشن صفحه نمایش کاربران برنامه و تنظیم سایز اشیاء متناسب با آن چه روشی را پیشنهاد می کنید ؟
باسلام
برای بدست آوردن رزولیشن صفحه نمایش کاربران برنامه و تنظیم سایز اشیاء متناسب با آن چه روشی را پیشنهاد می کنید ؟
شهر الکترونیک چیزی که همه بهش نیاز دارن و ما ایرانیها از همه نیازمند تر و در عین حال بی تفاوت تر به آن .
بهترین کار طراحی اشیاء در یک رزولیشن و سپس در هنگام لود شدن نرم افزار با استفاده از توابع API تغییر رزولیشن کامپیوتری که برنامه رو باز میکنه به رزولیشن زمان طراحی و در هنگام خروج باز گشت به رزولیشنی که قبلا بوده همانند اون چیزی که در Game ها اتفاق می افته...
دانلود نمونه برنامه
درپایان من این برنامه رو از خود این سایت دانلود کردم فکر میکنم شاپرک جان زحمت کشیده بودن مهندس تاپیک تکراری با قیچی سانسور مواجه میشه فرقی نمی کنه کیه ها
منی که نام شراب از کتاب می شستم
زمانه کاتب دکان می فروشم کرد.
مهندس جام ممنونم ولی به چشمم نخورد .
حالا هم اگه شما دستور بدی و لینکشو بهم بگی خودم قیچیش می کنم .
ضمنا در مورد تغییر رزولیشن خیلی مطلب دیدم البته بیشتر تو VB اما به نظرم کار جالبی نیست که ما موقع بالا اومدن برناممون رزولیشن کاربر بیچاره رو تغییر بدیم این اصلا User freindly نیست چون ممکنه در طول روز به طور متناوب از برنامه ما استفاده کنه و بخواد اونو تو Task نگه داره اونوقت باید یا از رزولیشن دلخواه خودش صرف نظر کنه یا از برنامه ما .
ولی اگه برنامه طوری طراحی بشه ( حالا نه صد در صد ) که با رزولیشن های متفاوت تغییر سایز بده بهتره .
اگه نمونه ای فقط برای بدست آوردن رزولیشن دارید ممنون می شم .
شهر الکترونیک چیزی که همه بهش نیاز دارن و ما ایرانیها از همه نیازمند تر و در عین حال بی تفاوت تر به آن .
کسی که نظری نداد یک راهی به نظرم رسید که جواب داد به این صورت که هنگام اجرای برنامه فرم اول که اندازه ثابتی داره رو مورد بررسی قرار بدیم و ببینیم در هر رزولیشن عدد left و Top اون چقدر هست به این صورت می تونیم رزولیشن صفحه رو بدست بیاریم .
شهر الکترونیک چیزی که همه بهش نیاز دارن و ما ایرانیها از همه نیازمند تر و در عین حال بی تفاوت تر به آن .
منم همین مشکل رو دارم ممکنه بیشتر توضیح بدین یعنی اون فرمی که تو استارت آپ باز میشه رو باید چک کنیم؟
بله همینطوره در قیمت onload اون فرم با نوشتن این کد ساده میشه رزولیشن رو تشخیص دادSelect Case Form.WindowLeft
Case Is > 6000
Msgbox "Resulation = 1024"
Case 4500 To 6000
Msgbox "Resulation = 800"
Case Is < 4500
Msgbox "Resulation = 640"
End Select
شهر الکترونیک چیزی که همه بهش نیاز دارن و ما ایرانیها از همه نیازمند تر و در عین حال بی تفاوت تر به آن .
در VB از این میشه استفاده کرد :
ResWidth = Screen.Width \ Screen.TwipsPerPixelX
ResHeight = Screen.Height \ Screen.TwipsPerPixelY
ScreenRes = ResWidth & "x" & ResHeight
MsgBox (ScreenRes)
ولی تو اکسس Screen پیدا نکردم
شما چیزی معادلش سراغ دارید ؟
شهر الکترونیک چیزی که همه بهش نیاز دارن و ما ایرانیها از همه نیازمند تر و در عین حال بی تفاوت تر به آن .
بدلیل اینکه فرم های وبی داری Hwnd خودشون هستن ولی در اکسس کل برنامه دارای یک Hwnd هستش برای اینکار باید از کد معادل زیر برای Screen استفاده کنین.
Screen.ActiveForm
منی که نام شراب از کتاب می شستم
زمانه کاتب دکان می فروشم کرد.
ببخشید مهندس جون منظورمو خوب نگفتم
اینی که شما گفتید درسته اما چطور میشه ازش برای بدست آوردن رزولیشن استفاده کرد چون Width و Height مربوط به فرم اکتیو رو می ده نه رزولیشن صفحه نمایشو .
شهر الکترونیک چیزی که همه بهش نیاز دارن و ما ایرانیها از همه نیازمند تر و در عین حال بی تفاوت تر به آن .
شرمنده من فقط با اون پست خواستم بگم که دنبال Screen نگردین تو API چیزی برای رزولشن نداریم؟
منی که نام شراب از کتاب می شستم
زمانه کاتب دکان می فروشم کرد.
اگه کد نویسیتون هم مثل جمله بالا باشه ( 3 تا غلط املائی ) همون 640 هم که داده خیلی عالیه .
به نکات زیر توجه بفرمایید :
1- مقدار فضای دیتل فرم و size پنجره فرم رو به کمترین مقدار کاهش بدید.
2- Autoresize غیر فعال باشه .
3- Autocenter فعال باشه .
حالا دوباره بعد از هر بار تغییر رزولیشن امتحان کنید حتما جواب میده .
شهر الکترونیک چیزی که همه بهش نیاز دارن و ما ایرانیها از همه نیازمند تر و در عین حال بی تفاوت تر به آن .
من نمی دونم درست متوجه شدم یا نه اما این فایل رو ببینید
البته من تا جایی که یادم میاد از یکی از مباحث فروم خودمون دانلودش کردم
دمت گرم