امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
تصادفی قرار گرفتن کامپوننتها
نویسنده پیام
siana_k1980 آفلاین
كاربر دو ستاره
**

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

تشکرها : 36
( 9 تشکر در 7 ارسال )
ارسال: #1
تصادفی قرار گرفتن کامپوننتها
چند تا دکمه و فریم روی فرم دارم وقتی فرم ,LOAD میشه 7تا دکمه ای که دارم به شکل تصادفی در نقاطی از فرم باید قرار بگیرند من از کد زیر استفاده کردم
PRIVATE SUB FORM_LOAD()
RANDOMIZE
FOR I=0 TO 6
COMMAND(I).TOP=RND()*ME.WIDTH
COMMAND(I).LEFT=RND()*ME.HEIGHT
NEXT I
ولی بعضی از دکمه ها در حاشیه فرم نصفه نیمه نمایش داده میشن این مشکل اولم بود و دوم اینکه چیکار کنم دکمه ها زیر فریم ها قرار نگیرندI
۳۰-فروردین-۱۳۸۷, ۰۲:۴۱:۰۸
ارسال‌ها
پاسخ
lord_viper غایب
مدیر کل انجمن
*****

ارسال‌ها: 3,949
موضوع‌ها: 352
تاریخ عضویت: بهمن ۱۳۸۴

تشکرها : 5193
( 9875 تشکر در 2650 ارسال )
ارسال: #2
RE: تصادفی قرار گرفتن کامپوننتها
اگه طول button شما 20 و عرضش 5 باشه شما باید مقادیر رو به صورت
COMMAND(I).TOP=RND()*ME.WIDTH-20
COMMAND(I).LEFT=RND()*ME.HEIGHT-5
قرار بدین تاbuttonها دقیقا داخل فورم قرار بگیرن
۳۰-فروردین-۱۳۸۷, ۰۸:۳۳:۴۹
وب سایت ارسال‌ها
پاسخ
Darg غایب
مدير بازنشسته
*****

ارسال‌ها: 894
موضوع‌ها: 40
تاریخ عضویت: تير ۱۳۸۴

تشکرها : 381
( 702 تشکر در 190 ارسال )
ارسال: #3
RE: تصادفی قرار گرفتن کامپوننتها
lord_viper هم اشاره کرد...
کدی که نوشتی به شکل زیر اصلاح می شه:

Randomize Timer
For I = 0 To 6
Command1(I).Top = Int(Rnd * (Me.ScaleHeight - Command1(I).Height))
Command1(I).Left = Int(Rnd * (Me.ScaleWidth - Command1(I).Width))
Command1(I).ZOrder vbBringToFront
Next I

مهمترین ایراد کدت این بود که Top رو با Width استفاده می کرد و Left رو با Height محاسبه می کرد در حالی که عکس این مطلب درسته!

اگر می خوای دکمه روی فریم بیافته (با شرط اینکه دکمه داخل فریم نباشه ها) باید از خصوصیت Zolder استفاده کنی که در کد بالا می بینی.
با Zolder موقعیت کنترل ها در بردار Z رو تنظیم می کنی...
(آخرین ویرایش در این ارسال: ۳۰-فروردین-۱۳۸۷, ۰۸:۵۴:۵۹، توسط Darg.)
۳۰-فروردین-۱۳۸۷, ۰۸:۴۸:۱۲
وب سایت ارسال‌ها
پاسخ


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  گرفتن متن فارسی و نمایش آن از فایل متنی GTAexcess 2 3,065 ۱۳-اردیبهشت-۱۳۹۵, ۱۴:۰۸:۴۷
آخرین ارسال: Ghoghnus
  مشکل ماژول گرفتن اطلاعات سیستم hossein161 1 2,792 ۲۰-شهریور-۱۳۹۴, ۱۵:۲۲:۲۲
آخرین ارسال: Payman62
  [سوال] گرفتن شماره ستون و ردیف از رنج مشخص به شکل داینامیک eppagh 0 2,162 ۰۶-اسفند-۱۳۹۳, ۲۰:۱۸:۱۳
آخرین ارسال: eppagh
  کمک برای گرفتن خروجی در EXCEL javad917 4 5,369 ۱۵-آبان-۱۳۹۳, ۱۴:۵۸:۵۴
آخرین ارسال: javad917
  مشکل در تماس گرفتن MSComm mahdi321 3 4,039 ۰۶-فروردین-۱۳۹۳, ۱۹:۴۶:۲۸
آخرین ارسال: Ghoghnus
  قرار دادن خروجی دستور sql در یک متغیر sepahbod 1 3,971 ۱۶-آذر-۱۳۹۲, ۲۱:۳۳:۳۳
آخرین ارسال: hmiranled
  گرفتن سورس سایت aleas 6 5,415 ۲۷-شهریور-۱۳۹۲, ۱۴:۰۴:۴۰
آخرین ارسال: rap0661
  جمع زدن دو فیلد و قرار دادن در فیلد دیگر در VB6 mohsen0025 7 7,477 ۰۲-شهریور-۱۳۹۲, ۱۱:۵۱:۴۶
آخرین ارسال: mohsen0025
Question [سوال] گرفتن آیپی سایت megatron 6 5,209 ۲۱-تير-۱۳۹۲, ۲۳:۵۴:۳۲
آخرین ارسال: megatron
  گرفتن عکس از هر جایی که دلت بخواد skh1300 2 3,473 ۱۲-اسفند-۱۳۹۱, ۱۷:۳۸:۳۰
آخرین ارسال: setroyd

پرش به انجمن:


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

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