Просто используйте InsertItems(list,pos)
, где pos
равно 0 - добавленные элементы будут вставлены в любую объявленную позицию.т.е.
import wx
class MainPanel(wx.Panel):
def __init__(self, parent):
wx.Panel.__init__(self, parent)
initial_items = ['A reasonably long item that should cause a scrollbar to appear xxxxxx', 'another line', 'and another']
self.listbox = wx.ListBox(self, style=wx.LB_HSCROLL)
self.listbox.InsertItems(initial_items, 0)
self.AddBtn = wx.Button(self, -1, "Add Item")
self.AddBtn.Bind(wx.EVT_BUTTON, self.OnAdd)
sizer = wx.BoxSizer(wx.VERTICAL)
sizer.Add(self.listbox, 1, wx.EXPAND)
sizer.Add(self.AddBtn, 0, wx.EXPAND)
self.SetSizer(sizer)
def OnAdd(self,evt):
self.listbox.InsertItems(['Hello World'], 0) #add at position zero
class MainWindow(wx.Frame):
def __init__(self):
wx.Frame.__init__(self, None, -1, "ListBox", size=(400, 400))
main_sizer = wx.BoxSizer(wx.VERTICAL)
main_sizer.Add(MainPanel(self), 1, wx.EXPAND)
self.SetSizer(main_sizer)
self.Layout()
self.Center()
self.Show(True)
app = wx.App()
mw = MainWindow()
app.MainLoop()