قم بتعديل تسمية StaticBoxSizer على wxPython
-
05-07-2019 - |
سؤال
هل هناك طريقة لتعديل تسمية 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!")
لا تنتمي إلى StackOverflow