wxpython splitterwindow não se expande dentro de um painel
-
20-08-2019 - |
Pergunta
Estou tentando um layout simples e o painel dividido por uma SplitterWindow não se expande para preencher toda a área, o que eu quero é isso:
[button] <= (fixed size)
---------
TEXT AREA }
~~~~~~~~~ <= (this is the splitter) } this is a panel
TEXT AREA }
O código real é:
import wx
app = wx.App()
frame = wx.Frame(None, wx.ID_ANY, "Register Translator")
parseButton = wx.Button(frame, label="Parse")
panel = wx.Panel(frame)
panel.SetBackgroundColour("BLUE")
splitter = wx.SplitterWindow(panel)
inputArea = wx.TextCtrl(splitter, style=wx.TE_MULTILINE)
outputArea = wx.TextCtrl(splitter, style=wx.TE_MULTILINE)
splitter.SplitHorizontally(inputArea, outputArea)
sizer=wx.BoxSizer(wx.VERTICAL)
sizer.Add(parseButton, 0, wx.ALIGN_CENTER)
sizer.Add(panel, 1, wx.EXPAND | wx.ALL)
frame.SetSizerAndFit(sizer)
frame.SetAutoLayout(1)
frame.Show(True)
app.MainLoop()
Defino a cor do painel diferente e ele está usando toda a área, para que o problema seja apenas o SplitterWindow dentro do painel, não dentro do BoxSizer.
Alguma idéia sobre por que não está funcionando? Obrigado!
Solução
O painel provavelmente está se expandindo, mas o ScrolledWindow dentro do painel não é, porque você não está usando um Sizer para o painel, apenas o quadro.
Você também pode tentar apenas fazer com que o SplitterWindow seja filho do quadro, sem o painel.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow