Добавить пробел между виджетами WxPython

1

Это мой код:

class TabTwo(wx.Panel):
    def __init__(self, parent):
        wx.Panel.__init__(self, parent)
        self.resetButton = wx.Button(self, label="Reset")
        self.contactButton = wx.Button(self, label="Contact")
        self.copyrightButton = wx.Button(self, label="Copyright")

        v_sizer = wx.BoxSizer(wx.VERTICAL)
        h_sizer = wx.BoxSizer(wx.HORIZONTAL)

        v_sizer.Add(self.resetButton, 0, wx.EXPAND, 30)
        v_sizer.Add(self.contactButton, 0, wx.EXPAND, 30)
        v_sizer.Add(self.copyrightButton, 0, wx.EXPAND, 30)

        self.SetSizer(v_sizer)

Как добавить пробел между кнопками (Reset, Contact и Copyright), чтобы он не выглядел так, как будто он был нажат вместе.
Изображение 174551

Теги:
python-3.x
wxwidgets
wxpython

1 ответ

2
Лучший ответ

Укажите границу при добавлении в sizer:

    v_sizer.Add( self.resetButton, 0, wx.EXPAND|wx.TOP|wx.BOTTOM, 5 )
    v_sizer.Add( self.contactButton, 0, wx.EXPAND|wx.TOP|wx.BOTTOM, 5 )
    v_sizer.Add( self.copyrightButton, 0, wx.EXPAND|wx.TOP|wx.BOTTOM, 5 )

Здесь wx.TOP|wx.BOTTOM указывает, чтобы добавить границу в верхнюю и нижнюю части виджета. Я предполагаю, что вы просто хотите сверху и снизу; wx.ALL добавляет со всех сторон. Также wx.RIGHT и wx.LEFT.

Параметр, следующий за wx.EXPAND|wx.TOP|wx.BOTTOM (т.е. 5), является размером границы.

См. Здесь для получения дополнительной информации: https://wxpython.org/Phoenix/docs/html/wx.Sizer.html#wx-sizer. В частности, функция " Add и параметры " flag и " border.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню