PDA

View Full Version : ثابت ماندن کنترلهای روی فرم با تغییر رزولیشن



soltanvb
شنبه 24 اردیبهشت 1384, 13:02 عصر
می خوام با تغییر رزولیشن کنترلهای روی فرم ثابت بمونن و مکانشون تغییر نکنه
شما چه راهی رو پیشنهاد می کنید ؟

Hamedm
شنبه 24 اردیبهشت 1384, 14:11 عصر
سلام

چند وقت پیش یک سری OCX در اینترنت دیدم، برای اینکار بود. خیلی جالب بود، خود OCX اندازه و مکان کامپوننت های روی فرم رو تغییر میداد. از این جور OCXها در اینترنت زیاده. کمی جستجو کنی مطمئنا پیدا میکنی.

در پناه حق موفق باشید و پرتوان

niloufar
شنبه 24 اردیبهشت 1384, 18:54 عصر
سلام

می خوام با تغییر رزولیشن کنترلهای روی فرم ثابت بمونن و مکانشون تغییر نکنه
شما چه راهی رو پیشنهاد می کنید ؟
اگه منظورت رو یه فرم کوچیکه که اصلا خود به خود همه چیز سر جاش باقی می مونه و اگه منظور یه فرم FullScreen است، یه راهی ساده ای که در خیلی برنامه ها استفاده می شه اینه که یه اندازه ثابت (مثلا 800*600) برای اصل کارت در نظر بگیری و پشت اون را با یه Image پرکنی، حال هر وقت اندازه Screen به اندازه 800*600 باشه که اون Image نشون داده نمیشه و اگه 1024 باشه، در جاهای خالی نشون داده میشه.

soltanvb
شنبه 24 اردیبهشت 1384, 21:16 عصر
با تشکر از پاسخ شما دوستان
منظورم فرم فول اسکرینه
من خودم روی فرم یک picture box میذارم و کل کنترلارو روی اون قرار می دم اینطوری در اندازه های بزرگتر اندازه ها به هم نمی خوره ولی کناره فرم یه ذره خالی می مونه
من منظورم این بود که فرم در تمام رزولیشن ها یکسان دیده بشه
اگه لطف کنید بگید که این ocx هارو از کجا می تونم گیر بیارم ممنون می شم

mohsengrisly
یک شنبه 25 اردیبهشت 1384, 00:13 صبح
ای بابا خب بیا کاری کن که برنامه همیشه در حالت خاصی مثلا 600 در 800 اجرا بشه و بعد از خروج از
برنامه به حالت اولیه بر گرده راه دوم هم اینه که تمامی اجزا رو با اندازه فرم ست کنی

ab_ba
یک شنبه 25 اردیبهشت 1384, 07:09 صبح
با سلام
تابع زیر را به همه فرمهایت اضافه کن و آنرا در form_load اجرا کن
البته این تابع فرض میکند که در شما فرمهایتان را در حالت 800 در 600 طراحی کرده ای که فکر کنم همینطور هم باشد


Public Sub zoom()
On Error Resume Next
Dim OBJ As Object
Dim zoomw As Long
Dim zoomh As Long
zoomw = Screen.Width / 120
zoomh = Screen.Height / 90
Me.Width = Me.Width * zoomw / 100
Me.Height = Me.Height * zoomh / 100
For Each OBJ In Me.Controls
OBJ.Font.name = Main.fontbtext: OBJ.Font.size = OBJ.Font.size + Main.fontsizeb: OBJ.Font.Bold = Main.fontboldb
OBJ.Width = OBJ.Width * zoomw / 100
OBJ.Height = OBJ.Height * zoomh / 100
OBJ.Top = OBJ.Top * zoomh / 100
OBJ.Left = OBJ.Left * zoomw / 100
OBJ.Font.size = OBJ.Font.size * zoomw / 100
Next
End Sub


موفق باشید
--------------------------------
حسابداری الماس
نرم افزاری مختص کسبه و تجار

09183616528

mohsengrisly
یک شنبه 25 اردیبهشت 1384, 14:57 عصر
با سلام خدمت همه دوستان
اینم یه نمونه برای روش اول
:موفق:

soltanvb
یک شنبه 25 اردیبهشت 1384, 15:17 عصر
متشکرم