انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید


توزیع گنو/لینوکس اوبونتو ۲۰ ساله شد 🎉

نویسنده موضوع: سوال در مورد ایجاد یک شیی جدید در python و با gtk  (دفعات بازدید: 1989 بار)

0 کاربر و 1 مهمان درحال مشاهده موضوع.

آفلاین moshen212

  • Sr. Member
  • *
  • ارسال: 344
  • جنسیت : پسر
سلام
دوستان من قصد دارم یک برنامه بنویسم که شامل یک "کلاس ترکیبی" باید باشه منظورم یک کلاس جدید شامل {یک کلید و چند عکس} باید چه کار کنم؟
میدونم باید یک کلاس تعریف کنم اما من میخوام self خود شیی رو برگردونه و نه مثلا self.object نشانی شیی باشه
ممنونم.
« آخرین ویرایش: 12 دی 1387، 05:36 ق‌ظ توسط moshen212 »

آفلاین moshen212

  • Sr. Member
  • *
  • ارسال: 344
  • جنسیت : پسر
هیچکس نمیدونه؟

آفلاین سعید رسولی

  • ilius, saeedgnu
  • عضو کاربران ایرانی اوبونتو
  • *
  • ارسال: 1543
  • جنسیت : پسر
سلام.
باید کلاس اون شیئ رو بعنوان آرگومان به این کلاسی که می‌نویسید بدید، بعد داخل تابع __init__ این کلاس خودتون، اون کلاس رو __init__  کنید.
می‌تونم یه مثال ساده براتون بنویسم. مثلاً چه کلاسی رو می‌خوید extend کنید؟
« آخرین ویرایش: 17 دی 1387، 02:51 ق‌ظ توسط ilius »

آفلاین moshen212

  • Sr. Member
  • *
  • ارسال: 344
  • جنسیت : پسر
سلام
قبل از هر چیز باید بگم دمتتتتتتتتتتت گرم باشه همیشه انشا ا...
من هنوز چیزی رو که گفتی امتحان نکردم ولی لطف کن و قدم به قدم با من باش
در مورد اون مثالی که گفتید اگه میشه self یک VBox شامل دو تا Button رو برگردونه کافیه.
باز هم ممنونم

آفلاین سعید رسولی

  • ilius, saeedgnu
  • عضو کاربران ایرانی اوبونتو
  • *
  • ارسال: 1543
  • جنسیت : پسر
خواهش می‌کنم
مثلاً اینجوری:
class MyVbox(gtk.VBox):
  def __init__(self):
    gtk.VBox.__init__(self)
    ....

آفلاین moshen212

  • Sr. Member
  • *
  • ارسال: 344
  • جنسیت : پسر
سلام سه باره  :D
میشه کل این کد رو بنویسید در ضمن بگید که چرا باید این خط رو نوشت:
gtk.VBox.__init__(self)منظورم اینه که این خط چه کاری در پشت پرده انجام میده؟
« آخرین ویرایش: 17 دی 1387، 12:04 ق‌ظ توسط moshen212 »

آفلاین سعید رسولی

  • ilius, saeedgnu
  • عضو کاربران ایرانی اوبونتو
  • *
  • ارسال: 1543
  • جنسیت : پسر
سلام سه باره  :D
میشه کل این کد رو بنویسید در ضمن بگید که چرا باید این خط رو نوشت:
gtk.VBox.__init__(self)منظورم اینه که این خط چه کاری در پشت پرده انجام میده؟
این خط همون شیئ VBox رو میسازه.(هر شیئی نیاز به ساخته شدن داره) منتها بجای اینکه توی یه متغیر معمولی قرار بده، توی متغیر self کلاس قرار میده.
کل کدوم کد رو بنویسم. حالا اون متغیر self یه شیئ VBox هست دیگه، خودتون می‌تونید دو تا Button توش بذارید.