سؤال

هل هناك طريقة لتعديل تسمية StaticBoxSizer على wxPython بعد التهيئة؟

لم أتمكن من العثور على أي شيء في وثائق wxPython.

شكرًا لك

هل كانت مفيدة؟

المحلول

عندما تقوم بإنشاء wx.StaticBoxSizer, ، يجب عليك تمريرها أ wx.StaticBox باعتبارها الوسيطة الأولى للمُهيئ، فهذا هو ما تحتاج إلى تعديله لتغيير التسمية.إذا نظرت إلى التسلسل الهرمي للطبقات، فإنها تذهب على النحو التالي:

  • الكائن -> الكائن -> EvtHandler -> النافذة -> التحكم -> StaticBox
  • كائن -> كائن -> مقاس -> BoxSizer -> StaticBoxSizer

كما كنت قد برزت، SetLabel ليست طريقة للتحجيم أو أي من أصوله، بل تعيش في فئة التحكم، لذلك يرثها الصندوق.

# creating the static box sizer
self.my_box = wx.StaticBox(self.panel, wx.ID_ANY, "Spam, spam, spam")
self.sizer_static_box = wx.StaticBoxSizer(self.my_box)

# then do something like this later        
self.my_box.SetLabel("I hate spam!")
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top