Как мне вставить два изображения и один текст в строку состояния в wxpython?

#python #python-2.7 #wxpython

#python #python-2.7 #wxpython

Вопрос:

Как мне вставить два изображения в строку состояния в wxpython в этом формате: image1.jpg——image2.jpg———имя_проекта(некоторая строка)

Мой код выглядит примерно так:

 self.StatusBar = self.CreateStatusBar(3)
self.Set_Text_Value(self)
self.Centre()
self.Show(True)
self._init_coll_StatusBar_Fields(0)
self._init_coll_StatusBar_Fields1(1)

def Set_Text_Value(self, event):   #for reading a file containing project name
    fob = open(r'C:3d-Modelbincurr_proj.txt' , 'r')
    s = fob.read()
    a= s.split("\")
    s1= a[3]
    self.StatusBar.SetStatusText('PROJECT:  '  s1 , 2)

def _init_coll_StatusBar_Fields(self, parent):       #for inserting image1
    bmp1 = wx.Image('image1.jpg',wx.BITMAP_TYPE_JPEG).ConvertToBitmap()
    def scale_bitmap(bitmap, width, height):
        image = wx.ImageFromBitmap(bitmap)
        image = image.Scale(width, height, wx.IMAGE_QUALITY_HIGH)
        result = wx.BitmapFromImage(image)
        return result
    bmp1 = scale_bitmap(bmp1, 75, 25)
    bm1=wx.StaticBitmap(self.StatusBar , 0 , bmp1)
  

И аналогично для вставки второго изображения у меня есть _init_coll_StatusBar_Fields1

На выходе отображается только одно изображение в крайнем левом углу первой строки состояния, другое скрывается под ним, если оба имеют одинаковые размеры. Как мне приступить к кодированию?

Спасибо за помощь!

Комментарии:

1. Вы хотите, чтобы в макете фрейма был такой порядок?

2. ДА. В принципе, я хочу вставить два изображения в строку состояния, а также один текст..

Ответ №1:

Я полагаю, что класс StatusBar по умолчанию не поддерживает тот уровень настройки, который вы ищете. Попробуйте использовать EnhancedStatusBar. У него не должно возникнуть проблем с выполнением того, что вы хотите.