を呼び出すことにより、フィールドの数を減らすことができますmystatusbar.SetFieldsCount(numfields)
。必要に応じて、を使用して再スケーリングします.SetStatusWidths([list])
。を使用して、個々の位置のテキストを変更します.SetStatusText('string', position)
。ステータスバーセクションに隠れているコントロール(チェックボックスなど)がある場合は、で指定された場所に移動できます.GetFieldRect(position)
。wx.EVT_SIZEで、または何かを削除/削除するたびにこれを呼び出します。
末尾(最高のインデックス)以外の場所からフィールドを削除する場合は、最初にデータを手動でシフトする必要があります。使用しているとおっしゃいまし.SetFields()
たが、先に渡したリストを取り出して、不要なリストを削除し.pop()
てください。
wxPythonデモからのいくつかの再配置コード:
# reposition the checkbox
def Reposition(self):
rect = self.GetFieldRect(1) # the checkbox lives in the 2nd (index 1) slot
self.cb.SetPosition((rect.x+2, rect.y+2))
self.cb.SetSize((rect.width-4, rect.height-4))
self.sizeChanged = False
wxPythonデモアプリで、すばやくハックしてその中から実行できるサンプルコードを探してください。