امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
چند تا سوال درمورد object ها ...
نویسنده پیام
NabiKAZ آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 520
موضوع‌ها: 48
تاریخ عضویت: اسفند ۱۳۸۲

تشکرها : 6
( 60 تشکر در 46 ارسال )
ارسال: #1
چند تا سوال درمورد object ها ...
سلام

- چطور ميشه يه ابجکت Line بدون استفاده از فرمان Load بسازيم، يعني از روي نمونه کپي نسازه ، بلکه يه ابجکت که وجود نداره ايجاد کنه و انديس 0 به خودش بگيره.

- چطور ميشه چک کرد ابجکت وجود دارد يا خير.

نبی

۱۳-فروردین-۱۳۸۵, ۱۵:۴۳:۴۴
وب سایت ارسال‌ها
پاسخ
Darg غایب
مدير بازنشسته
*****

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

تشکرها : 381
( 702 تشکر در 190 ارسال )
ارسال: #2
at  RE: چند تا سوال درمورد object ها ...
سلام نبی جان
یک مدت نبودم اما حالا می تونم کمی بیشتر تو سایت باشم

کد زیر رو درون فرمت بنویس برای ایجاد Line, اگر برای ایجاد بقیه اشیاء مشکل داشتی به خودم بگو:

Dim WithEvents NewLine As VB.Line
Private Sub Form_Load()
Set NewLine = Controls.Add("VB.Line", "NewLine", Me)
With NewLine
.X1 = 100
.Y1 = 100
.X2 = 100
.Y2 = 1000
.Visible = True
End With
End Sub
۱۳-فروردین-۱۳۸۵, ۱۶:۰۴:۴۵
وب سایت ارسال‌ها
پاسخ
NabiKAZ آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 520
موضوع‌ها: 48
تاریخ عضویت: اسفند ۱۳۸۲

تشکرها : 6
( 60 تشکر در 46 ارسال )
ارسال: #3
RE: چند تا سوال درمورد object ها ...
سلام
از جوابت خیلی ممنونم .
- خط اول آیا صرفا برای بهینه کردن حافظست؟! چون بدون خط اول هم کار میکنه .
- در مورد پارامتر های متند add هم بگو ، فقط پارامتر دومی رو متوجه نشدم چیکار میکنه.
- چطور میشه اندیس هم براش تعریف کرد .
- و چطور میشه وجودش رو چک کرد تا در صورت موجود بودن اون رو unload کرد.

بازم ممنون
نبی

۱۳-فروردین-۱۳۸۵, ۱۷:۵۸:۳۶
وب سایت ارسال‌ها
پاسخ
Darg غایب
مدير بازنشسته
*****

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

تشکرها : 381
( 702 تشکر در 190 ارسال )
ارسال: #4
RE:  چند تا سوال درمورد object ها ...
NabiKAZ نوشته است:- خط اول آیا صرفا برای بهینه کردن حافظست؟! چون بدون خط اول هم کار میکنه .

درسته بدون خط اول هم کار میکنه اما این خط فقط برای اینه که رویدادهای مربوط به شیء جدید قابل فراخوانی و کد نویسی باشه. درسته که این یک Line و هیچ رویدادی نداره اما برای اسجاد شیء مانند یک CommandButton به طور حتم به رویداد های مربوطه و تعریف خط تول احتیاج میشه!

NabiKAZ نوشته است:- در مورد پارامتر های متند add هم بگو ، فقط پارامتر دومی رو متوجه نشدم چیکار میکنه.

دستورش به شکل زیره:
Collection.Add ObjectClassName,ObjectName,ObjectParent
Collection که درون یک فرم تبدیل به Controls میشه چون تمامی اشیاء فرمت درون این کلکسیون قرار میگیره
ObjectClass در واقع کلاس قابل تعریف برای اشیاء موجوده که البته ما اینجا فقط به اسم اون احتیاج داریم
ObjectName هم همون نام شیء جدیده
ObjectParent هم شیء مادر که شئ جدید روی اون قرار میگیره شما میتونید از تمام اشیایی که خاصیت Container داشته باشند رو به جای شیء مادر استفاده کنید.

NabiKAZ نوشته است:- چطور میشه اندیس هم براش تعریف کرد .
متاسفانه هنوز من هم موفق به ایجاد اشیاء اینچنینی ایندکس دار نشدم. یعنی خیلس سعی کردم اما به جایی نرسیدم
می دونید در قسمت وارد کردن نام شیء در متد Add نمیشه ایندکس شیء جدید رو وارد کردSad

NabiKAZ نوشته است:- و چطور میشه وجودش رو چک کرد تا در صورت موجود بودن اون رو unload کرد.

در کد زیر پیغام اول Nothing چون NewLine هنوز به شیء منتسب نشده اما پیغام بعدی Line خواهد بود ...

Dim WithEvents NewLine As VB.Line
Private Sub Form_Load()
MsgBox TypeName(NewLine)
Set NewLine = Controls.Add("VB.Line", "NewLine", Me)
With NewLine
.Visible = True
End With
MsgBox TypeName(NewLine)
End Sub
البته برای تشخیص وجود یک شیء راههای دیگه ای هم هست که فعلا به ذهن من نمی رسه
۱۳-فروردین-۱۳۸۵, ۱۸:۳۱:۰۳
وب سایت ارسال‌ها
پاسخ
NabiKAZ آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 520
موضوع‌ها: 48
تاریخ عضویت: اسفند ۱۳۸۲

تشکرها : 6
( 60 تشکر در 46 ارسال )
ارسال: #5
RE: چند تا سوال درمورد object ها ...
سلام
از توضیحات کاملتون ممنون ، مفید بود و استفاده کردم .

فقط یه مشکل کوچیک ، این TypeName که گفتید در ازای هر اندیسی مقدار Line رو برمیگردونه ، ولی من میخوام متوجه بشم شیء با اندیس خاص وجود دارد یا خیر .

ببینید من میخوام یه فرم مشبک ، تشکیل شده از یه سری خط افقی و عمودی داشته باشم ، و با یه اسکرول که تعیین کننده فاصله خطوط است فاصله اونها رو تنظیم کنم . طبیعیه که در ازای فاصله خطوط بیشتر ، تعداد خطوط هم کمتر میشه و بلعکس . یعنی به نسبت تعداد فواصل خطوط ، تعداد خطوط لازم هم متغییره که نیاز میشه در ابتدا خطوط موجود را unload کنیم و به تعداد مورد نیاز خط رو Load کنیم .
شاید حالا بهتر بتونید جواب سوالم رو بدید .

متشکرم
نبی

۱۳-فروردین-۱۳۸۵, ۲۱:۱۵:۳۸
وب سایت ارسال‌ها
پاسخ
NabiKAZ آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 520
موضوع‌ها: 48
تاریخ عضویت: اسفند ۱۳۸۲

تشکرها : 6
( 60 تشکر در 46 ارسال )
ارسال: #6
RE: چند تا سوال درمورد object ها ...
یه سوال دیگه !
در مورد فرم مشبکی که توضیح دادم ، ما با نقاط برخورد خطوط افقی و عمودی یعنی گره ها هم کار داریم ، و لازمه از روی مختصات نقاط به گره خاص دسترسی داشت. به نظرم رسید که روی هر گره یک Image کوچک قرار داد که رویداد پذیر هم باشه ، اما این شیء تنها یک اندیس رو میپذیره ، ولی ما به دو اندیس یکی برای افق و یکی برای عمود نیازمندیم . چطور میشه به ابجکت های روی نقاط گره با استفاده از طول و عرض اون دسترسی داشت.
راهکار خاصی در نظر دارید؟

تشکر
نبی

۱۳-فروردین-۱۳۸۵, ۲۲:۰۶:۵۵
وب سایت ارسال‌ها
پاسخ
محمد حسینی آفلاین
کاربر فعال بخش رباتیک
****

ارسال‌ها: 1,363
موضوع‌ها: 139
تاریخ عضویت: آذر ۱۳۸۴

تشکرها : 974
( 1780 تشکر در 620 ارسال )
ارسال: #7
RE: چند تا سوال درمورد object ها ...
منم تو یه برنامه لازم بود یه picturebox با خطوط عمودی و افقی درست کنم. این کارو با متد line تو یه حلقه با چند خط کد کوتاه انجام دادم. چرا از این متد استفاده نمی کنی؟
اگه یه عکس از اون فرم بهم بدی می تونم برات بنویسمش که با یه اسکرول فاصله کم و زیاد بشه. چون تغریبا قبلا بیشتر کاراش رو کردم.
در مورد اون گره ها هم بیشتر توضیح بده که می خوای چیکار کنی شاید بشه کاریش کرد

به راه بادیه رفتن، به از نشستن باطل ------------- اگرچه وصل نیابم، بقدر وسع بکوشمRolleyes
۱۳-فروردین-۱۳۸۵, ۲۳:۱۵:۴۱
ارسال‌ها
پاسخ
hamed_Arfaee آفلاین
مدیر بخش
*****

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

تشکرها : 1250
( 2634 تشکر در 730 ارسال )
ارسال: #8
RE: چند تا سوال درمورد object ها ...
خوب شما بیا با مختصات نقاط کار کن و با در دست داشتن یک ماتریس n*nمی تونی به هر گرهی دسترسی داشته باشی

حامد ارفعی

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


تریگرها در SQL server

آیا میدانید SQL ای
۱۳-فروردین-۱۳۸۵, ۲۳:۳۷:۵۷
وب سایت ارسال‌ها
پاسخ
محمد حسینی آفلاین
کاربر فعال بخش رباتیک
****

ارسال‌ها: 1,363
موضوع‌ها: 139
تاریخ عضویت: آذر ۱۳۸۴

تشکرها : 974
( 1780 تشکر در 620 ارسال )
ارسال: #9
RE: چند تا سوال درمورد object ها ...
ببین همین رو می خواستی
http://www.spiderman.persiangig.com/VB/Grid.zip

به راه بادیه رفتن، به از نشستن باطل ------------- اگرچه وصل نیابم، بقدر وسع بکوشمRolleyes
۱۳-فروردین-۱۳۸۵, ۲۳:۴۵:۳۹
ارسال‌ها
پاسخ
Darg غایب
مدير بازنشسته
*****

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

تشکرها : 381
( 702 تشکر در 190 ارسال )
ارسال: #10
RE:  چند تا سوال درمورد object ها ...
spiderman برنامه خوبی نوشتی دستت درست (فقط ای کاش برای دکمه Exit خروج رو کد نویسی می کردیShy )
یک راه اینه که به جای استفاده و پردازش ایندکس اشیاء از حافظه کمک بگیری یعنی آرایه ای تعریف کنی ساختارش یک ماتریس باشه همون طور که دوستان اشاره کردند
اما اگر من جای شما بودم (روش خودم) اصلا هیچ کار اضافی یا تعریف حافظه ای در نظر نمی گرفتم چرا که خود ایندکس ها جواب رو در هر فراخوانی به ما میدند فقط یکمی محاسبه ریاضی می خواهد
این هم بپستگی داره به ترتیب چیدمان اشیاء روی هر گره
فرض کنیم که اشیاء رو به شکل زیر بچینی

3 2 1 0
7 6 5 4
11 10 9 8
15 14 13 12

خوب حالا میخوای بفهمی شیء ایندکس 11 کجاست یعنی شماره ردیف و ستونش چیه
ستونش میشه: I mod 4+1 ===> 11 mod 4=3+1=4
ردیفش: I\4+1 ===> 11\4+1=3


NabiKAZ نوشته است:این TypeName که گفتید در ازای هر اندیسی مقدار Line رو برمیگردونه ، ولی من میخوام متوجه بشم شیء با اندیس خاص وجود دارد یا خیر .

یه مثلی هست که میگه شما اول برادری خودت رو ثابت کن (چه ربطی داشت)
شما اول بیا تایین کن که شیء وجود داره بعدا خیلی روش هست که میشه فهمید فلان ایندکش هم هست با نه
مثلا تله خطا : اگر بخوای یک شیء با یک ایندکس رو که وجود داررو دوباره ایجاد کنی خطلا میده (این فقط یه مثال بود مطمعنم راههای بهتری هم به ذهنت میرسه)
با اینکه برای چک کردن حداکثر ایندکس های یک شیء یا آرایه از فرمان
UBound
و برای مینیمم از فرمان
LBound
استفاده کن


راستی اگر تونستی شیء جدید ایندکسی ایجاد کنی روشش رو به ماهم بگو یاد بگیریم.
۱۴-فروردین-۱۳۸۵, ۰۱:۵۷:۴۴
وب سایت ارسال‌ها
پاسخ
NabiKAZ آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 520
موضوع‌ها: 48
تاریخ عضویت: اسفند ۱۳۸۲

تشکرها : 6
( 60 تشکر در 46 ارسال )
ارسال: #11
RE:  چند تا سوال درمورد object ها ...
spiderman نوشته است:منم تو یه برنامه لازم بود یه picturebox با خطوط عمودی و افقی درست کنم. این کارو با متد line تو یه حلقه با چند خط کد کوتاه انجام دادم. چرا از این متد استفاده نمی کنی؟
اگه یه عکس از اون فرم بهم بدی می تونم برات بنویسمش که با یه اسکرول فاصله کم و زیاد بشه. چون تغریبا قبلا بیشتر کاراش رو کردم.
در مورد اون گره ها هم بیشتر توضیح بده که می خوای چیکار کنی شاید بشه کاریش کرد

سلام
عزيز دست شما درد نکنه که راهنمايي کردي. برنامت هم ديدم ، خوب بود.
راستش من خودم ابتدا در نظر داشتم از Line استفاده کنم ، ولي فکر کردم سرعت اين کار پايين باشه ولي برنامه شما رو که ديدم فهميدم که اشتباه کردم ! يعني استفاده از متد Line خيلي سريع تر از شيء Line عمل ميکنه و حسن بزرگي هم که داره اينه که راحت ميشه فرم رو همراه با خطوط مشبک در قالب يک تصوير ذخيره کرد... حالا که متوجه شدم احتمالا روي متد Line سوئيچ کنم .

البته در مورد گره ها ناچارم که از شيء استفاده کنم ، چون يه سري مشخصه ها در مورد گره ها هست که بايد ذخيره بشن و در محاسبات استفاده بشن.

ببينيد پروژه من نرم افزار پروژه تسطيح اراضي است ، يعني اينکه روش کار بدين شکله که زمين رو به شبکه هاي منظم با طول ثابت و مقايس مشخص تقسيم ميکنند ، نقاط برخورد خطوط عمودي و اففي گره نام داره که ارتفاع و مختصات هر گره بايد جداگانه ذخيره بشه تا در مواقع نياز مشخصات گره ها در محاسبات استفاده بشه. البته بعضي گره ها ممکن است مجهول باشند.

ضمنا براي ساده تر شدن وارد کردن اطلاعت ورودي ، ميخوام کاربر روي هر گره کليک کنه و پنجره مربوط به مشخصات هر گره ظاهر بشه تا براحتي بتونه مشخصات گره رو وارد کنه.

فکر ميکنم الان دقيقا متوجه شديد دنبال چي هستم .
باز هم تشکر ميکنم .
نبي

۱۵-فروردین-۱۳۸۵, ۰۷:۱۵:۰۲
وب سایت ارسال‌ها
پاسخ


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  دو سوال درمورد برنامه های پرتابل policweb 16 11,532 ۲۸-شهریور-۱۳۹۲, ۱۰:۳۸:۳۹
آخرین ارسال: Ghoghnus
  سوال درمورد ارسال پی ام به یاهو reza-ezdeham 5 5,040 ۱۳-آبان-۱۳۹۰, ۱۵:۳۵:۱۵
آخرین ارسال: p8tir
  سوال درمورد Winsock kamyabpc 7 6,989 ۱۰-دى-۱۳۸۹, ۲۲:۴۸:۲۷
آخرین ارسال: amir00
  کمک درمورد برنامه انبار main 4 5,254 ۰۶-اردیبهشت-۱۳۸۹, ۱۰:۵۵:۱۹
آخرین ارسال: main
Question سوال درمورد Mouse Move toopdanlod 4 4,198 ۰۹-مرداد-۱۳۸۸, ۰۱:۵۳:۱۶
آخرین ارسال: toopdanlod
  چاپ PictureBox حاوی Object mojtabamalaekeh 2 2,283 ۲۴-بهمن-۱۳۸۷, ۱۰:۳۱:۰۵
آخرین ارسال: mojtabamalaekeh
Sad سوال درمورد dynaset, table, snapshot greenday 1 2,202 ۱۹-آبان-۱۳۸۷, ۰۱:۱۰:۵۰
آخرین ارسال: keihancpu
  درمورد رویداد های form در ویژوال بیسیک mahdi rezaei 2 2,881 ۰۶-دى-۱۳۸۶, ۰۰:۴۵:۵۹
آخرین ارسال: arashrj
Question چه جوری یک Embedded Object File میشه ساخت ؟ User-Name 13 8,084 ۲۰-اردیبهشت-۱۳۸۵, ۰۰:۴۰:۵۳
آخرین ارسال: User-Name
  Run-time error '91' : Object variable or With block variable not set a_persian_boy 3 5,515 ۰۹-فروردین-۱۳۸۵, ۰۱:۳۵:۳۳
آخرین ارسال: a_persian_boy

پرش به انجمن:


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

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