(wx python) автоматический размер текста в boxsizer
Я использую wxpython для приложения, однако я не могу автоматически изменить размер текста с помощью wx.statictext (есть ли способ отобразить текст без использования этого?), И этот текст находится в boxsizer, но когда я изменяю размер окна, он не ' т работает вопреки моим кнопкам...
(Я уже ищу и пробую вещи, используя размер или перенос...)
Спасибо за все
РЕДАКТИРОВАТЬ: вот некоторый код для иллюстрации, измените размер окна, и вы увидите, что текст сам не изменяет размер
import wx
import wx.grid as grid
import time
date=time.strftime('%d/%m/%Y ? %H:%M')
app = wx.App()
win = wx.Frame(None, title="Title", size=(410, 335))
bkg = wx.Panel(win)
loadButton = wx.Button(bkg, label='Open',size=(200,40))
saveButton = wx.Button(bkg, label='Save',size=(200,40))
QRbutton=wx.Button(bkg, label='qr',size=(200,40))
ddate=wx.StaticText(bkg,-1,date)
bkg.grid = grid.Grid(bkg)
bkg.grid.CreateGrid(20, 5)
chronobox = wx.BoxSizer(wx.HORIZONTAL)
chronobox.Add(saveButton, proportion=2, flag=wx.SHAPED|wx.ALIGN_CENTER, border=5)
chronobox.Add(loadButton, proportion=2, flag=wx.SHAPED|wx.ALIGN_CENTER, border=5)
hbox = wx.BoxSizer(wx.VERTICAL)
hbox.Add(ddate, proportion=5,flag=wx.ALIGN_CENTER)
hbox.Add(chronobox, proportion=2, flag=wx.EXPAND| wx.ALL, border=5)
hbox.Add(QRbutton, proportion=1, flag=wx.SHAPED|wx.ALIGN_CENTER, border=5)
globalbox = wx.BoxSizer(wx.HORIZONTAL)
globalbox.Add(hbox, proportion=5, flag=wx.EXPAND | wx.ALL, border=5)
globalbox.Add(bkg.grid, proportion=4,flag=wx.EXPAND | wx.LEFT | wx.BOTTOM | wx.RIGHT, border=5)
bkg.SetSizer(globalbox)
win.Show()
app.MainLoop()
1 ответ
Описание функции SetLabel: Устанавливает статическую текстовую метку и обновляет размер элементов управления, чтобы точно соответствовать метке, если только элемент управления не имеет флага wxST_NO_AUTORESIZE. Если вы хотите изменить размер шрифта, вы можете обратиться к этой статье.