【发布时间】:2013-12-03 07:52:23
【问题描述】:
我一直在尝试制作一些可以让我在一行中有多个句子的东西。 代码是:
import wx
app = wx.PySimpleApp()
class MyDialog(wx.Frame):
"""
This is my dialog in which I have my interface.
"""
def __init__(self):
"""
This stores all my variables.
"""
wx.Frame.__init__(self, None, -1, "Edit Action", size=(400, 300))
self.my_mini_panels = []
self.my_mini_hboxes = []
self.my_mini_vboxes = []
self.main_vbox = wx.BoxSizer(wx.VERTICAL)
self.main_hbox = wx.BoxSizer(wx.HORIZONTAL)
self.my_mini_panels.append(wx.Panel(self, -1, style=wx.SIMPLE_BORDER,
size=(400, 20)))
self.my_mini_hboxes.append(wx.BoxSizer(wx.HORIZONTAL))
self.my_mini_vboxes.append(wx.BoxSizer(wx.VERTICAL))
self.my_mini_hboxes[0].AddMany((wx.StaticText(self.my_mini_panels[0],
-1, 'Here it is... '),
wx.StaticText(self.my_mini_panels[0],
-1, 'There it was.')))
self.my_mini_panels.append(wx.Panel(self, -1, style=wx.SIMPLE_BORDER,
size=(400, 20)))
self.my_mini_hboxes.append(wx.BoxSizer(wx.HORIZONTAL))
self.my_mini_vboxes.append(wx.BoxSizer(wx.VERTICAL))
self.my_mini_hboxes[1].AddMany((wx.StaticText(self.my_mini_panels[1],
-1, 'Hello, '),
wx.StaticText(self.my_mini_panels[1],
-1, 'Goodbye!')))
for i, hbox in enumerate(self.my_mini_hboxes):
hbox.Add(self.my_mini_vboxes[i])
self.main_vbox.AddMany(tuple(self.my_mini_hboxes))
self.main_hbox.Add(self.main_vbox)
self.SetSizer(self.main_hbox)
if __name__ == '__main__':
dialog = MyDialog()
dialog.Show(True)
app.MainLoop()
它似乎不起作用。我希望它看起来像这样:
我做错了什么?
编辑
也许我应该明确指出静态文本对象必须是分开的。我不能只用一个更大的段替换一行上的两个文本段。
【问题讨论】:
标签: python-2.7 wxpython