سایت ساز وبزیکسب درآمد

یک مشکل در زمینه ساخت یوزر کنترل (OCX)

شروع موضوع توسط saeed_vb ‏24 ژانویه 2007 در انجمن Visual Basic 6

  1. saeed_vb

    saeed_vb Registered User

    تاریخ عضویت:
    ‏9 دسامبر 2005
    نوشته ها:
    646
    تشکر شده:
    6
    محل سکونت:
    همین ورا
    باسلام
    من میخوام در برنامه زیر وقتی روی دکمه کنار تکست باکس کلیک میکنم
    فرم زیر منترل تکست باکس باز بشه ولی نمیشه ا
    اصلان نمیتونم موقعیت تکست باکس را روی صفحه مشخص کنم:( :(
    ممنون منتظر جواب شما هستم
    اینم کدش
     

    فایل های ضمیمه:

  2. بازدیدیار - افزایش بازدید سایت و سیگنال های برندخرید بک لینک
  3. SNo

    SNo Registered User

    تاریخ عضویت:
    ‏18 ژانویه 2007
    نوشته ها:
    1,570
    تشکر شده:
    535
    محل سکونت:
    نوک قله دماوند
    در رابطه با مشكلتون بايد بگم كه براي تشخيص دادن موقعيت تكست باكس بايد از شئ Extender استفاده كنيد
    و حالا براي اينكه اون فرم زير تكست باكس قرار بگيره ميتونيد كد زير رو در رويداد كليد دكمه بنويسيد.
    البته اين كد وقتي جواب ميده كه كنترل داخل خود فرم باشد (در هنگام استفاده از كنترل) يعني اگه اونو داخل يك فريم بذاريد احتمال داره كه فرم سر جاي خودش قرار نگيره


    FrmEBCalendar.Left = Extender.Left + UserControl.Parent.Left + 60
    FrmEBCalendar.Top = Extender.Top + UserControl.Parent.Top + txtDate.Height + 460
    FrmEBCalendar.Width = Extender.Width
    FrmEBCalendar.Show​

    در ضمن براي مشخص كردن كنترل لازم نيست اسم اون رو بنويسيد و فقط به جاي آن بايد از كلمه UserControl استفاده كنيد.
     
  4. saeed_vb

    saeed_vb Registered User

    تاریخ عضویت:
    ‏9 دسامبر 2005
    نوشته ها:
    646
    تشکر شده:
    6
    محل سکونت:
    همین ورا
  5. saeed_vb

    saeed_vb Registered User

    تاریخ عضویت:
    ‏9 دسامبر 2005
    نوشته ها:
    646
    تشکر شده:
    6
    محل سکونت:
    همین ورا
  6. saeedsmk

    saeedsmk مدیر بازنشسته

    تاریخ عضویت:
    ‏6 سپتامبر 2003
    نوشته ها:
    1,518
    تشکر شده:
    4
    سلام
    خوب هستي
    نه سعيد جان اصلا سخت نيست خيلي هم اسونه :cool:

    ببين سعيد جان براي اينكه شما پنجره رو زير دكمه پايين رونده نشان دهيد بايد بتوني توي صفحه مختصاتشو معين كني براي اين كار ميتوني از getwindowrect استفاده كني كه مختصات مستطيل محاط شده بر پنجره تو ميده ( منظورم از پنجره هر چيزيه مثل دكمه و ....)

    خوب بعد پنجره تو جابجا ميكني و....
    براي اينكه اگر يوزر جاي از صفحه كليك كرد كه تو نميدوني ايا توي فرمته يا نه بهترين روشي كه به ذهنم ميرسه استفاده از getactivewindow است با مقايسه اين مقدار توي پريود ها متفاوت با هندل پنجره مون ميفهميم ايا پنجره اكتيو است يا نه يعني ايا يوزر جاي كليك كرده يا نه
    و...

    كدشو بهمراه فايل برات اتچ كردم

    اميدوارم كم كنه
     

    فایل های ضمیمه:

    • 1.zip
      اندازه فایل:
      7.9 KB
      نمایش ها:
      24
  7. saeed_vb

    saeed_vb Registered User

    تاریخ عضویت:
    ‏9 دسامبر 2005
    نوشته ها:
    646
    تشکر شده:
    6
    محل سکونت:
    همین ورا
    بازم سلام
    ممنون سعید جان برای مکان کنترل کدی که آقای ULF_VB6 کار کرد
    و کد شما هم برای بستن پنجره کار کرد
    حالا چه جوری میتونم برای کنترلی که روی فرم قرار داره پروپرتی تعریف کرد
    ممنون
     

    فایل های ضمیمه:

  8. saeedsmk

    saeedsmk مدیر بازنشسته

    تاریخ عضویت:
    ‏6 سپتامبر 2003
    نوشته ها:
    1,518
    تشکر شده:
    4
    سلام
    خوب هستيد با دستور
    Public Property Let ميتوني مقادير رو براي اشيا مختلف بگيري
    و با استفاده از
    Public Property get ميتوني مقادير رو به خروجي بدي

    يك كامپوننت تاريخ قبلا نوشته بودم برات اتچ ميكنم
     

    فایل های ضمیمه:

    • date_ocx.zip
      اندازه فایل:
      20.2 KB
      نمایش ها:
      33
  9. saeed_vb

    saeed_vb Registered User

    تاریخ عضویت:
    ‏9 دسامبر 2005
    نوشته ها:
    646
    تشکر شده:
    6
    محل سکونت:
    همین ورا
    سلام آقا سعید ممنون ولی من با ساخت peroperty برای خود یوزر کنترل مشکلی ندارم من برای ساخت peroperty
    کنترل هایی که روی فرم FrmEBCalendar قرار دارن مشکل دارم مثل همون Imigbox که روش قرار داره من چه جوری برای این Imigbox خصوصیت تعریف کنم ممنون
    امید وارم منظورم فهمیده باشید:cool:
     
  10. saeedsmk

    saeedsmk مدیر بازنشسته

    تاریخ عضویت:
    ‏6 سپتامبر 2003
    نوشته ها:
    1,518
    تشکر شده:
    4
    سلام
    خوب هستيد
    خوب باري اون ها هم مثل اشيا يوزر كنترل پرو پرتي اختصاص بده اما فكر كنم اين نكته ها رو اگر رعايت كنيد ختما جواب ميگيرد :
    1- همانطور كه مي دونيد property ها رو توي صفحه كد يوزر كنترل بايد تعريف بشه
    2- براي دسترسي به اشيا ديگر پنجره هاي يوزر كنترل بايد اسم اون ها بياد مثلا
    کد:
    FrmEBCalendar.image1.picture
    
    شما مي تونيد از property set نيز استفاده كنيد

    كد مثال كه خاصيت imagepic و شي picture پنجره image رو ميشه اختصاص داد رو براي پروژه يوزر كنترل رو اتچ كردم

    اميدوارم كمك كنه
     

    فایل های ضمیمه:

    • 1.zip
      اندازه فایل:
      28.5 KB
      نمایش ها:
      25
  11. saeed_vb

    saeed_vb Registered User

    تاریخ عضویت:
    ‏9 دسامبر 2005
    نوشته ها:
    646
    تشکر شده:
    6
    محل سکونت:
    همین ورا
عسل طبیعی و گرده گل ایرانیخرید و فروش اتوماتیک ارزهای الکترونیکی