import glob import wx class ServerPanel(wx.Panel): def __init__(self, parent): super().__init__(parent) main_sizer = wx.BoxSizer(wx.VERTICAL) toolbar1 = wx.ToolBar(self) toolbar1.AddTool(wx.ID_ANY, '', wx.Bitmap('pigeonLOGO.png')) toolbar1.Realize() main_sizer.Add(toolbar1, 0, wx.EXPAND) self.Bind(wx.EVT_TOOL, self.OnQuit) self.SetSizer(main_sizer) self.SetSize((350, 250)) self.Centre() self.row_obj_dict = {} self.list_ctrl = wx.ListCtrl( self, size=(-1, 100), style=wx.LC_REPORT | wx.BORDER_SUNKEN ) self.list_ctrl.InsertColumn(0, 'PID', width=140) self.list_ctrl.InsertColumn(1, 'Local Address', width=140) self.list_ctrl.InsertColumn(2, 'Timestamp', width=140) self.list_ctrl.InsertColumn(3, 'Proto', width=140) self.list_ctrl.InsertColumn(4, 'Recv-Q', width=140) self.list_ctrl.InsertColumn(5, 'Send-Q', width=140) self.list_ctrl.InsertColumn(6, 'Foreign Address', width=140) self.list_ctrl.InsertColumn(7, 'Block', width=60) self.list_ctrl.InsertColumn(8, 'State', width=140) self.list_ctrl.InsertColumn(9, 'Duration', width=140) ## To add checkboxes for whether or not something is blocked ##idx = 0 ##for i in varNameForBlock: ## index = self.list.InsertItem(idx, i[0]) ## self.list.SetItem(index, 1, i[1]) ## self.list.SetItem(index, 2, i[2]) ## idx += 1 main_sizer.Add(self.list_ctrl, 0, wx.ALL | wx.EXPAND, 5) start_button = wx.Button(self, label='Start') start_button.Bind(wx.EVT_BUTTON, self.on_edit) stop_button = wx.Button(self, label='Stop') stop_button.Bind(wx.EVT_BUTTON, self.on_edit) main_sizer.Add(start_button, 0, wx.ALL | 100, 5) main_sizer.Add(stop_button, 0, wx.ALL | 100, 5) self.SetSizer(main_sizer) def OnQuit(self, e): self.Close() def on_edit(self, event): print('in on_edit') def update_mp3_listing(self, folder_path): print(folder_path) class ServerFrame(wx.Frame): def __init__(self): super().__init__(parent=None, title='Server Dashboard') self.panel = ServerPanel(self) self.Show() if __name__ == '__main__': app = wx.App(False) frame = ServerFrame() app.MainLoop()