آموزش کانتینر در PyGTK

3 سال پیش

آموزش کانتینر در PyGTK

در این درس از مجموعه آموزش برنامه نویسی سایت سورس باران، به آموزش کانتینر در PyGTK خواهیم پرداخت.

پیشنهاد ویژه : پکیج آموزش پایتون

کتابخانه PyGTK کلاس های مختلف کانتینر را برای کنترل قرار دادن ابزارک ها در داخل یک پنجره ارائه می دهد. ساده ترین راه این است که از یک کلاس کانتینر ثابت استفاده کنید و با مشخص کردن مختصات مطلق آن در پیکسل، یک ویجت را در داخل آن قرار دهید.

اجازه دهید اکنون این مراحل را دنبال کنیم –

مرحله ۱ – یک شیء از کلاس ثابت را اعلام کنید

fixed = gtk.Fixed()

 

مرحله ۲ – یک ویجت دکمه ایجاد کنید و با استفاده از متد ()put  که به مختصات x و y نیاز دارد آن را به کانتینر ثابت اضافه کنید. در اینجا، دکمه در موقعیت (۱۰۰،۱۰۰) قرار می گیرد.

btn = gtk.Button("Hello")
fixed.put(btn, 100,100)

 

مرحله ۳ – می توانید چندین کنترل را در کانتینر ثابت قرار دهید. و ، آن را به پنجره سطح بالا اضافه کنید و متد ()show_all را فراخوانی کنید

self.add(fixed)
self.show_all()

 

این طرح بندی مطلق، به دلایل زیر مناسب نیست –

  • حتی اگر اندازه پنجره تغییر کرده باشد، موقعیت ویجت تغییر نمی کند.
  • ظاهر ممکن است در دستگاه های مختلف با وضوح متفاوت یکنواخت نباشد.
  • تغییر در طرح مشکل است زیرا ممکن است نیاز به طراحی مجدد کل فرم داشته باشد.

Hello World

در زیر پنجره تغییر اندازه است –

PyGTK Hello World
در اینجا موقعیت دکمه تغییر نمی کند.

PyGTK API کلاس های کانتینری را برای مدیریت بهتر موقعیت یابی ویجت ها در داخل کانتینر ارائه می دهد. مزایای مدیران طرح بندی نسبت به موقعیت یابی مطلق عبارتند از –

  • اندازه ویجت های داخل پنجره به طور خودکار تغییر اندازه می دهد.
  • ظاهر یکنواخت را در دستگاه های صفحه نمایش با وضوح مختلف تضمین می کند.
  • افزودن یا حذف ویجت به صورت پویا بدون نیاز به طراحی مجدد امکان پذیر است.

gtk.Container به عنوان کلاس پایه کلاسهای زیر عمل می کند –

  • gtk.ButtonBox
  • gtk.Box
  • gtk.Alignment
  • gtk.EventBox
  • gtk.Table

 

منبع.

 

لیست جلسات قبل آموزش PyGTK

  1. آموزش PyGTK
  2. معرفی PyGTK
  3. آموزش محیط  PyGTK
  4. آموزش Hello World در  PyGTK
  5. آموزش کلاس های مهم در  PyGTK
  6. آموزش کلاس پنجره در PyGTK
  7. آموزش کلاس دکمه در PyGTK
  8. آموزش کلاس لیبل در PyGTK
  9. آموزش کلاس ورود در PyGTK
  10. آموزش مدیریت سیگنال در PyGTK
  11. آموزش مدیریت رویداد در PyGTK
0
برچسب ها :
نویسنده مطلب erfan molaei

دیدگاه شما

بدون دیدگاه