def initialize(self): self.SetSize(700, 500) self.SetBackgroundColour("WHITE") # INITIALIZE TABLE FOR CODE INFO wx.StaticText(self, label="Code", pos=(0, 0)) self.codeGrid = grid.Grid(self, pos=(0, 20), size=(320, 200)) self.codeGrid.CreateGrid(0, 4) self.codeGrid.SetColLabelValue(0, "Address") self.codeGrid.SetColLabelValue(1, "Rep") self.codeGrid.SetColLabelValue(2, "Label") self.codeGrid.SetColLabelValue(3, "Instruction") self.codeGrid.SetRowLabelSize(0) # INITIALIZE TABLE FOR DATA INFO wx.StaticText(self, label="Data", pos=(0, 220)) self.dataGrid = grid.Grid(self, pos=(0, 240), size=(220, 200)) self.dataGrid.CreateGrid(0, 4) self.dataGrid.SetColLabelValue(0, "Address") self.dataGrid.SetColLabelValue(1, "Rep") self.dataGrid.SetColLabelValue(2, "Label") self.dataGrid.SetColLabelValue(3, "Code") self.dataGrid.SetRowLabelSize(0) # INITIALIZE TABLE FOR REGISTERS wx.StaticText(self, label="Registers", pos=(230, 220)) self.regGrid = grid.Grid(self, pos=(230, 240), size=(220, 200)) self.regGrid.CreateGrid(0, 2) self.regGrid.SetColLabelValue(0, "Register") self.regGrid.SetColLabelValue(1, "Value") self.regGrid.SetRowLabelSize(0) # INITIALIZE TABLE FOR OUTPUT wx.StaticText(self, label="Output", pos=(470, 0)) self.outGrid = grid.Grid(self, pos=(470, 20), size=(220, 450)) self.outGrid.CreateGrid(0, 2) self.outGrid.SetColLabelValue(0, "Cycle") self.outGrid.SetColLabelValue(1, "Value") self.outGrid.SetRowLabelSize(0) self.resetRegisters() # INITIALIZE RUN BUTTON self.runBtn = wx.Button(self, label="Run Cycle", pos=(460, 390), size=(120, 25)) self.runBtn.Bind(wx.EVT_BUTTON, self.run) self.runBtn.Hide() # INITIALIZE RUN ALL BUTTON self.runAllBtn = wx.Button(self, label="Run All Cycles", pos=(460, 415), size=(120, 25)) self.runAllBtn.Bind(wx.EVT_BUTTON, self.runAll) self.runAllBtn.Hide()
def show_result(self, event): self.m_staticText_show.SetLabelText(u"结果展示:") self.m_staticText_show.SetFont(wx.Font(10.5, 70, 90, 92, False, "宋体")) # 清空gbSizer_show self.gbSizer_show.Clear() """固有不确定性参数表格""" self.ER_grid = grid.Grid(self.scrolledWindow, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, 0) """认知不确定性参数表格""" self.ES_grid = grid.Grid(self.scrolledWindow, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, 0) """输入参数表格""" self.Input_grid = grid.Grid(self.scrolledWindow, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, 0) """表格列表""" self.tables = self.Input_grid, self.ER_grid, self.ES_grid # 设置提示字和表格的垂直距离 text_position = 0 table_position = text_position + 1 self.m_staticText_input_size = wx.StaticText(self.scrolledWindow, wx.ID_ANY, u"固有不确定性参数:", wx.DefaultPosition, wx.DefaultSize, 0) self.gbSizer_show.Add(self.m_staticText_input_size, wx.GBPosition(text_position, 4), wx.GBSpan(1, 1), wx.ALL, 5) # 获取返回的边界坐标 获取下一个参数的其实坐标 nextstart = self.draw_table(1, table_position, 4) + 2 self.m_staticText_input_size = wx.StaticText(self.scrolledWindow, wx.ID_ANY, u"认知不确定性参数:", wx.DefaultPosition, wx.DefaultSize, 0) self.gbSizer_show.Add(self.m_staticText_input_size, wx.GBPosition(text_position, nextstart), wx.GBSpan(1, 1), wx.ALL, 5) nextstart = self.draw_table(2, table_position, nextstart) + 2 self.m_staticText_input_size = wx.StaticText(self.scrolledWindow, wx.ID_ANY, u"输入参数:", wx.DefaultPosition, wx.DefaultSize, 0) self.gbSizer_show.Add(self.m_staticText_input_size, wx.GBPosition(text_position, nextstart), wx.GBSpan(1, 1), wx.ALL, 5) self.draw_table(0, table_position, nextstart) self.scrolledWindow.Refresh() self.Layout()
def __init__(self, parent, topLevelPanel, profile_points, profile_filename, event_descriptors): wx.Panel.__init__(self, parent) self.event_descriptors = event_descriptors self.profile_points = profile_points self.profile_shortfilename = profile_filename.split("/")[-1] self.profile_filecontents = self.getProfileContents(profile_filename) self.timeProfiled = False self.parseTimePoints() self.collection_names = self.generateCollectionNames() self.current_collection_events = {} self.ordered_collection_keys = [] self.parseProfileGeneralInfo() self.topLevelPanel = topLevelPanel self.eventsGrid = gridlib.Grid(self, size=(400, 600)) self.eventsGrid.CreateGrid(self.number_events, 3 if self.timeProfiled else 2) self.eventsGrid.SetColLabelValue(0, "Hardware event name") self.eventsGrid.SetColLabelValue(1, "Counts") if self.timeProfiled: self.eventsGrid.SetColLabelValue(2, "Std Dev") self.Bind(wx.grid.EVT_GRID_CELL_RIGHT_CLICK, self.RightClickOnRawValuesGrid, self.eventsGrid) self.derivedGrid = gridlib.Grid(self) self.derivedGrid.CreateGrid(14, 3 if self.timeProfiled else 2) self.derivedGrid.SetColLabelValue(0, "Metric") self.derivedGrid.SetColLabelValue(1, "Quantity") if self.timeProfiled: self.derivedGrid.SetColLabelValue(2, "Std Dev") self.Bind(wx.grid.EVT_GRID_CELL_RIGHT_CLICK, self.RightClickOnDerivedValuesGrid, self.derivedGrid) self.profile_collection_chooser = wx.ComboBox( self, choices=self.collection_names) self.profile_collection_chooser.SetSelection(0) self.Bind(wx.EVT_COMBOBOX, self.comboBoxChange, self.profile_collection_chooser) sizer = wx.BoxSizer(wx.VERTICAL) sizer.Add(self.profile_collection_chooser, 0, wx.EXPAND | wx.ALIGN_CENTER_HORIZONTAL | wx.ALL, 2) sizer.Add(self.eventsGrid, 2, wx.EXPAND | wx.ALIGN_CENTER_HORIZONTAL | wx.ALL) sizer.Add(self.derivedGrid, 2, wx.EXPAND | wx.ALIGN_CENTER_HORIZONTAL | wx.ALL) self.SetSizer(sizer)
def initUI(self): self.logger.info('init main UI') panel = wx.Panel(self) main_box = wx.BoxSizer(wx.VERTICAL) '''button''' btn_box = wx.BoxSizer(wx.HORIZONTAL) self.btn_import = wx.Button(panel, label=u'导入', size=(80, 35), id=ID_BTN_IMPORT) self.btn_import.Bind(wx.EVT_BUTTON, self.on_button_clicked) btn_box.Add(self.btn_import, 1) self.btn_export = wx.Button(panel, label=u'导出', size=(80, 35), id=ID_BTN_EXPORT) self.btn_export.Bind(wx.EVT_BUTTON, self.on_button_clicked) btn_box.Add(self.btn_export, 1, wx.LEFT, 10) # proportion is very import main_box.Add(btn_box, proportion=0, flag=wx.BOTTOM | wx.LEFT, border=10) main_box.Add((-1, 10)) '''create notebook, add a scroll panel''' self.notebook = wx.Notebook(panel, style=wx.NB_LEFT) self.sales_page = wx.ScrolledWindow(self.notebook, ID_PAGE_SALES, wx.DefaultPosition, wx.DefaultSize, wx.HSCROLL | wx.VSCROLL) self.sales_grid = wxgrid.Grid(self.sales_page) self.notebook.AddPage(self.sales_page, u"销售统计", select=True) self.payment_page = wx.ScrolledWindow(self.notebook, ID_PAGE_PAYMENT, wx.DefaultPosition, wx.DefaultSize, wx.HSCROLL | wx.VSCROLL) self.payment_grid = wxgrid.Grid(self.payment_page) self.notebook.AddPage(self.payment_page, u"中收") main_box.Add(self.notebook, proportion=1, flag=wx.EXPAND) panel.SetSizer(main_box) self.Center() self.Show()
def create_offers_table(self, num_debtors): if 'r_panel' in self.items: self.items['r_panel'].Destroy() table_height = (num_debtors + 1)*25 psize = (710, min(table_height, 16*25)) gsize = (710, table_height) ppos = (self.MENU_WIDTH, 70) self.items['r_panel'] = scrolled.ScrolledPanel(self, size=psize, pos = ppos) self.g = grid.Grid(self.items['r_panel'], size = gsize) self.g.CreateGrid(num_debtors, 7) self.g.SetMargins(-10,-10) self.g.SetGridLineColour(BLACK) self.g.SetRowLabelSize(40) self.g.SetColLabelSize(25) self.g.EnableEditing(False) vbox = wx.BoxSizer(wx.VERTICAL) vbox.Add(self.g, 0, wx.EXPAND) self.items['r_panel'].SetSizer(vbox) self.items['r_panel'].SetAutoLayout(1) self.items['r_panel'].SetupScrolling(rate_x = 25, rate_y=25) # set up the labels labels = ['Hotel Name', 'Room No', 'TV', 'AC', 'Suite', 'Balcony', 'Price'] sizes = [210, 90, 50, 50, 90, 90, 90] for i in range(7): self.g.SetColLabelValue(i,labels[i]) self.g.SetColSize(i,sizes[i]) # Alignment for i in range(num_debtors): self.g.SetCellAlignment(i,1,wx.ALIGN_RIGHT,wx.ALIGN_CENTRE) self.g.SetCellAlignment(i,3,wx.ALIGN_CENTRE,wx.ALIGN_CENTRE) # event handling self.g.Bind(wx.EVT_MOUSEWHEEL, self.grid_handler) self.g.Bind(wx.grid.EVT_GRID_CELL_LEFT_DCLICK, self.grid_offers_dclick)
def __init__(self, *args, **kw): # ensure the parent's __init__ is called super(MyFrame, self).__init__(*args, **kw) # create a panel in the frame panel = wx.Panel(self) self.myGrid = gridlib.Grid(panel) self.myGrid.CreateGrid(9, 9) self.reset(0) self.myGrid.HideColLabels() self.myGrid.HideRowLabels() self.myGrid.AutoSize() btnResolver = wx.Button(panel, wx.ID_ANY, 'Resolver', (10, 10)) btnResolver.Bind(wx.EVT_BUTTON, self.resolver) btnReset = wx.Button(panel, wx.ID_ANY, 'Reset', (10, 10)) btnReset.Bind(wx.EVT_BUTTON, self.reset) # and create a sizer to manage the layout of child widgets sizer = wx.BoxSizer(wx.VERTICAL) # sizer.Add(st, wx.SizerFlags().Border(wx.TOP|wx.LEFT, 25)) sizer.Add(self.myGrid) #, 1, wx.EXPAND sizer.Add( btnResolver) #, wx.SizerFlags().Border(wx.BOTTOM|wx.RIGHT, 25)) sizer.Add(btnReset) #, wx.SizerFlags().Border(wx.BOTTOM|wx.RIGHT, 25)) panel.SetSizer(sizer)
def __init__(self, parent): wx.Panel.__init__(self, parent) # t = wx.StaticText(self, -1, "This is the third tab", (20, 20)) '''filename = "C:\Users\VKOTHA\Downloads\Temp.xls" #filename = MainFrame.filePath book = xlrd.open_workbook(filename, formatting_info=1) sheetname = "IO_data" # sheetname = "Data" sheet = book.sheet_by_name(sheetname) rows, cols = sheet.nrows, sheet.ncols #print rows #print cols comments, texts = XG.ReadExcelCOM(filename, sheetname, rows, cols) aaGrid = XG.XLSGrid(self) #print book #print sheet #print texts #print comments aaGrid.PopulateGrid(book, sheet, texts, comments) sizer = wx.BoxSizer(wx.VERTICAL) sizer.Add(aaGrid, 1, wx.EXPAND, 5) self.SetSizer(sizer)''' global myGrid myGrid = gridlib.Grid(self) myGrid.CreateGrid(100, 10) sizer = wx.BoxSizer(wx.VERTICAL) sizer.Add(myGrid, 1, wx.EXPAND) self.SetSizer(sizer)
def __init__(self, parent,result): self.result = result wx.Panel.__init__(self, parent=parent) sizer = wx.BoxSizer(wx.VERTICAL) for i in range(len(result)): self.griddetail = gridlib.Grid(self) self.griddetail.CreateGrid(1,3) self.griddetail.SetDefaultCellOverflow(False) # self.griddetail.SetRowAttr("colAtr") self.griddetail.SetColSize(2,300) self.griddetail.SetRowSize(0,50) self.griddetail.SetRowLabelValue(0,str(i+1)) self.griddetail.SetColLabelValue(0,"桥名".decode("gbk")) self.griddetail.SetColLabelValue(1,"申报费".decode("gbk")) self.griddetail.SetColLabelValue(2,"申报陈述".decode("gbk")) self.griddetail.SetCellValue(0,0,result[i][0]) self.griddetail.SetCellValue(0,1,result[i][7]) self.griddetail.SetCellValue(0,2,result[i][8]) self.griddetail.SetDefaultCellOverflow(True) mylist = ['批准','驳回'] self.choice = wx.Choice(self, -1, choices = mylist,pos = (650,300),size=(100,50),name = "第%d条申报信息"%i) self.choice.Bind(wx.EVT_CHOICE, lambda evt,mark=i,choice=self.choice:self.changewhichone(evt,mark,choice)) # print self.choice.Name #可获得每个下拉框的name值 sizer1 = wx.BoxSizer(wx.HORIZONTAL) sizer1.Add(self.griddetail, 0, wx.EXPAND) sizer1.Add(self.choice, 0, wx.EXPAND) sizer.Add(sizer1,0,wx.CENTER) self.SetSizer(sizer)
def __init__(self, parent, id): wx.Frame.__init__(self, parent, id, title="接收机状态信息", pos=(500, 200), size=(710, 500)) # 界面的设置参数 #panel = wx.Panel(self) # 创建画板 _grid = grid.Grid(self, -1) #Bind(wx.grid.EVT_GRID_LABEL_LEFT_CLICK, self.OnLabelLeftClick) df = pd.read_excel(RECEIVER_EXCEL_PATH) self.df = df.loc[df['磁盘剩余空间(兆)'] > 1500] print(self.df) rows = len(self.df) cols = len(self.df.columns) print(rows, cols) _grid.CreateGrid(rows, cols) for i in range(cols): _grid.SetColLabelValue(i, str(self.df.columns[i])) for i in range(rows): for j in range(cols): _grid.SetCellValue(i, j, str(self.df.iloc[i][j])) # 设置行和列自动调整 _grid.AutoSize() self.Show()
def __CreateGrid(self, parent): #Estimates brightness of colours. If it is dark, changes text color to white self.myGrid = gridlib.Grid(parent) self.myGrid.CreateGrid(len(self.Episodes) + 5, 4, selmode=wx.grid.Grid.wxGridSelectRows) self.myGrid.SetColLabelAlignment(wx.ALIGN_RIGHT, wx.ALIGN_CENTER) self.myGrid.SetRowLabelAlignment(wx.ALIGN_RIGHT, wx.ALIGN_CENTER) self.myGrid.SetDefaultCellAlignment(wx.ALIGN_RIGHT, wx.ALIGN_CENTER) self.myGrid.SetColLabelValue(0, "Tag") self.myGrid.SetColLabelValue(1, "Init time") self.myGrid.SetColLabelValue(2, "End time") self.myGrid.SetColLabelValue(3, "Duration") self.myGrid.SetDefaultColSize(150) for row in range(len(self.Episodes)): for column in range(len(self.Episodes[row])): cellValue = self.Episodes[row][column] if column != 0: cellValueStr = "%.2f" % cellValue else: cellValueStr = str(cellValue) self.myGrid.SetCellValue(row, column, cellValueStr) self.myGrid.SetReadOnly(row, column) colorTag = self.dm.GetEpisodeColor(self.Episodes[row][0]) colors = self.GetColors(colorTag) self.myGrid.SetCellBackgroundColour(row, 0, colors["bg"]) self.myGrid.SetCellTextColour(row, 0, colors["fg"])
def __init__(self, parent): """Child Panel Constructor""" wx.Panel.__init__(self, parent) self.currentlySelectedCell = (0, 0) self.selectedCells = Set() self.myGrid = gridlib.Grid(self) self.myGrid.CreateGrid(40, 40) self.myGrid.Bind(gridlib.EVT_GRID_SELECT_CELL, self.onSingleSelect) self.myGrid.Bind(gridlib.EVT_GRID_RANGE_SELECT, self.onDragSelection) sizer = wx.BoxSizer(wx.VERTICAL) # orientation of items in sizer sizer.Add(self.myGrid, 1, wx.EXPAND) self.SetSizer(sizer) self.myGrid.DisableCellEditControl() self.myGrid.DisableDragColSize() self.myGrid.DisableDragRowSize() self.myGrid.SetDefaultColSize(1) self.myGrid.SetDefaultRowSize(1) self.myGrid.HideColLabels() self.myGrid.HideRowLabels() self.myGrid.EnableEditing(False) self.myGrid.SetMargins(0, 0)
def __init__(self, parent): wx.Panel.__init__(self, parent=parent) search = "select sum(bi.DeclareAmount) as 'ratified', bi.FatherWeb, wb.Ratified from bridgeinfo as bi JOIN WebBudget AS wb ON bi.FatherWeb=wb.WebName WHERE bi.DeclareProgress = '%s' GROUP BY bi.FatherWeb"%u"批准" # search = "select sum(DeclareAmount) as 'ratified', FatherWeb from bridgeinfo WHERE DeclareProgress = '%s' GROUP BY FatherWeb"%u"批准" self.result = MySqlUnit.exe_search(search)[:8] self.Budget = {u"二环":10000,u'中国':3000} sizer = wx.BoxSizer(wx.VERTICAL) for i in range(len(self.result)): self.griddetail = gridlib.Grid(self) self.griddetail.CreateGrid(1,3) self.griddetail.SetColSize(2,200) self.griddetail.SetColSize(0,100) self.griddetail.SetColSize(1,150) self.griddetail.SetRowSize(0,25) # self.griddetail.SetRowAttr("colAtr") self.griddetail.SetRowLabelValue(0,str(i+1)) self.griddetail.SetColLabelValue(0,"网络名".decode("gbk")) self.griddetail.SetColLabelValue(1,"已用预算".decode("gbk")) self.griddetail.SetColLabelValue(2,"总预算".decode("gbk")) self.griddetail.SetCellValue(0,0,self.result[i][1]) self.griddetail.SetCellValue(0,1,str(self.result[i][0])) print self.result[i][1] print type(self.result[i][1]) self.griddetail.SetCellValue(0,2,self.result[i][2]) self.btn = wx.Button(self,-1,label="提交预算更改",name="第%d个按钮"%i) self.input = wx.TextCtrl(self,-1,name="第%d个网络"%i) self.input.SetValue(u'在此输入总预算') self.btn.Bind(wx.EVT_BUTTON, lambda evt,mark=i,buuttnn=self.btn:self.changeWhichWeb(evt,mark,buuttnn)) sizer1 = wx.BoxSizer(wx.HORIZONTAL) sizer1.Add(self.griddetail, 0, wx.EXPAND) sizer1.Add(self.input, 0, wx.EXPAND) sizer1.Add(self.btn, 0, wx.EXPAND) sizer.Add(sizer1,0,wx.CENTER) self.SetSizer(sizer)
def OnInit(self): panel = wx.Panel(self, wx.ID_ANY) vbox = wx.BoxSizer(wx.VERTICAL) hbox1 = wx.BoxSizer(wx.HORIZONTAL) hbox2 = wx.BoxSizer(wx.HORIZONTAL) menuBar = wx.MenuBar() fileMenu = wx.Menu() fileMenu.Append(wx.ID_NEW, '&New') fileMenu.Append(wx.ID_OPEN, '&Open') fileMenu.Append(wx.ID_SAVE, '&Save') menuBar.Append(fileMenu, '&File') menu = self.SetMenuBar(menuBar) self.Bind(wx.EVT_MENU, self.OnButtonClicked) self.grid = gridlib.Grid(panel) self.grid.CreateGrid(10, 10) self.grid.SetCellValue(0, 0, '(0,0)') self.grid.SetCellValue(0, 0, '(0,1)') self.grid.SetCellValue(1, 0, '(1,0)') self.grid.SetCellValue(1, 0, '(1,1)') vbox.Add(self.grid, 1, wx.EXPAND, 5) panel.SetSizer(vbox)
def __init__(self, *args, **kw): # ensure the parent's __init__ is called super(MyFrame, self).__init__(*args, **kw) # create a panel in the frame panel = wx.Panel(self) self.myGrid = gridlib.Grid(panel) self.myGrid.CreateGrid(9, 9) for i in range(9): for j in range(9): self.myGrid.SetCellValue(i, j, '0') self.myGrid.AutoSize() button = wx.Button(panel, wx.ID_ANY, 'Test', (10, 10)) button.Bind(wx.EVT_BUTTON, self.onButton) # and create a sizer to manage the layout of child widgets sizer = wx.BoxSizer(wx.VERTICAL) # sizer.Add(st, wx.SizerFlags().Border(wx.TOP|wx.LEFT, 25)) # sizer.Add(self.myGrid, 1, wx.LEFT) sizer.Add(self.myGrid, proportion=0, border=0) sizer.Add(button, proportion=0, border=2) panel.SetSizer(sizer)
def construct_grid(self, data): self.my_grid = gridlib.Grid(self) self.my_grid.CreateGrid(len(data.index), len(data.columns)) for i in range(0, len(data.index)): for j in range(0, len(data.columns)): if(pd.notnull(data.iat[i, j])): self.my_grid.SetCellValue(i, j, str(data.iat[i, j])) else: self.my_grid.SetCellValue(i, j, " ") j = 0 for i in data.columns: if isinstance(i, str): self.my_grid.SetColLabelValue(j, i) else: self.my_grid.SetColLabelValue(j, str(i)) j += 1 self.my_grid.AutoSizeRows(setAsMin=True) self.my_grid.AutoSizeColumns(setAsMin=True) self.my_grid.EnableEditing(False) grid_sizer = wx.BoxSizer(wx.VERTICAL) grid_sizer.Add(self.my_grid, 1, wx.SHAPED) self.SetSizer(grid_sizer)
def __init__(self, title, parent=None): wx.Frame.__init__(self, parent=parent, title=title) self.Show() My_GridView = grid.Grid( self) # grid is an Module or Package Which import above My_GridView.CreateGrid(1000, 10) My_GridView.SetColLabelValue(0, 'Email ID') My_GridView.SetColSize(0, 120) My_GridView.SetColLabelValue(1, 'Address') My_GridView.SetColSize(1, 120) My_GridView.SetColLabelValue(2, 'Country') My_GridView.SetColSize(2, 120) My_GridView.SetColLabelValue(3, 'Purchaser') My_GridView.SetColSize(3, 120) My_GridView.SetColLabelValue(4, 'Tender No') My_GridView.SetColSize(4, 120) My_GridView.SetColLabelValue(5, 'Tender Details') My_GridView.SetColSize(5, 120) My_GridView.SetColLabelValue(6, 'Title') My_GridView.SetColSize(6, 120) My_GridView.SetColLabelValue(7, 'Submission Date') My_GridView.SetColSize(7, 120) My_GridView.SetColLabelValue(8, 'Tender Link') My_GridView.SetColSize(8, 120) My_GridView.SetColLabelValue(9, 'Source Name') My_GridView.SetColSize(9, 120) sizer = wx.BoxSizer(wx.VERTICAL) sizer.Add(My_GridView, 10, wx.EXPAND) self.SetSizer(sizer)
def __init__(self, parent, cfg, size=(800, 200)): wx.Panel.__init__(self, parent, size=size) self.cfg_dict = cfg.cfg_dict self.n_mons = self.cfg_dict[0]['monitors'] self.colLabels = [ 'Monitor', 'Track type', 'Track', 'Source', 'Mask', 'Output' ] # create the table self.acqGrid = gridlib.Grid(self) self.acqGrid.CreateGrid(self.n_mons, len(self.colLabels)) self.acqGrid.SetRowLabelSize(0) # no need to show row numbers for colnum in range(0, len(self.colLabels)): self.acqGrid.SetColLabelValue( colnum, self.colLabels[colnum]) # apply labels to columns self.updateTable() # fill the table using config info acqSizer = wx.BoxSizer(wx.VERTICAL) acqSizer.Add(self.acqGrid, 1, wx.EXPAND) self.SetSizer(acqSizer)
def onClick_button_import(self): show_panel = self.show_panel sizer = show_panel.GetSizer() self.gbSizer_show = wx.GridBagSizer(5, 5) # # 上部modelInfo_Panel # self.modelInfo_panel = wx.Panel(show_panel, wx.ID_ANY, wx.DefaultPosition, # wx.DefaultSize, wx.TAB_TRAVERSAL) # # self.modelInfo_panel.SetMaxSize(wx.Size(-1,100)) # # modelInfo_panel 的布局,元素为显示的控件 # self.modelInfo_panel.gbSizer = wx.GridBagSizer(5, 5) # self.modelInfo_panel.gbSizer.SetFlexibleDirection(wx.BOTH) # self.modelInfo_panel.gbSizer.SetNonFlexibleGrowMode(wx.FLEX_GROWMODE_SPECIFIED) # # 上方提示信息Panel # n_id = self.GetParent().GetParent().navTree.GetItemData(self.GetParent().GetParent().navTree.GetSelection()) # commonTag.setModeltag(self.modelInfo_panel, n_id) # 布局 self.bSizer = wx.BoxSizer(wx.VERTICAL) # self.bSizer.Add(self.modelInfo_panel,0, wx.ALL|wx.EXPAND, 0) sizer.Add(self.gbSizer_show, 0, wx.ALL | wx.EXPAND, 5) # sizer.Add(self.bSizer, 0, wx.ALL|wx.EXPAND, 5) """计算结果表""" self.Cal_Grid = grid.Grid(show_panel, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, 0) # self.Cal_form = EditMixin(show_panel) # self.Cal_form.Set table_position = 0 for child in self.gbSizer_show.Children: child.Destroy() self.gbSizer_show.Add(self.Cal_Grid, wx.GBPosition(table_position, 0), wx.GBSpan(25, 12), wx.ALL | wx.EXPAND, 5) show_panel.Layout() build_meta.importData(self, cp.n_id)
def __init__(self, parent, backups): self.selected = 0 self.backups = backups self.restored = None wx.Dialog.__init__(self, parent=parent, title='Restore backups') self.grid = grid.Grid(self) self.grid.CreateGrid(1, 3) self.grid.SetRowLabelSize(0) self.grid.SetColLabelValue(self.COL_SEL, 'Selected') self.grid.SetColLabelValue(self.COL_TIME, 'Time') self.grid.SetColLabelValue(self.COL_SIZE, 'Size (k)') self.grid.SetColFormatFloat(self.COL_SIZE, -1, 1) self.__set_grid() self.Bind(grid.EVT_GRID_CELL_LEFT_CLICK, self.__on_click) buttonRest = wx.Button(self, wx.ID_OPEN, 'Restore') buttonDel = wx.Button(self, wx.ID_DELETE, 'Delete') buttonCancel = wx.Button(self, wx.ID_CANCEL, 'Close') buttonRest.Bind(wx.EVT_BUTTON, self.__on_restore) buttonDel.Bind(wx.EVT_BUTTON, self.__on_delete) sizerButtons = wx.BoxSizer(wx.HORIZONTAL) sizerButtons.Add(buttonRest) sizerButtons.Add(buttonDel) sizerButtons.Add(buttonCancel) sizer = wx.BoxSizer(wx.VERTICAL) sizer.Add(self.grid, flag=wx.ALL | wx.EXPAND, border=5) sizer.Add(sizerButtons, flag=wx.ALL, border=5) self.SetSizerAndFit(sizer)
def __init_ctrls(self, parent): self.SetFont(wx.Font(9, wx.FONTFAMILY_SWISS, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_NORMAL, False, "Courier New")) sizer = wx.BoxSizer(wx.VERTICAL) # ツールバー self.toolbar = self.__init_toolbar() sizer.Add(self.toolbar, 0, wx.EXPAND) # 検索バー self.find_bar = self.__init_find_bar() sizer.Add(self.find_bar, 0, wx.EXPAND) # hexエディタ部分 self._grid_selecting_start = False self._in_selecting = False self.grid = wxgrid.Grid(self, -1) self._hex_cols = 16 self._init_grid() self._reset_grid() sizer.Add(self.grid, 1, wx.EXPAND) # ステータスバー self.status_bar = self.__init_status_bar() sizer.Add(self.status_bar, 0, wx.EXPAND) self.Bind(wx.EVT_SIZE, self.AutoSize) self.SetSizer(sizer)
def __init__(self, parent): super(MyPanel, self).__init__(parent) mygrid = grid.Grid(self) mygrid.CreateGrid(26, 9) sizer = wx.BoxSizer(wx.VERTICAL) sizer.Add(mygrid, 1, wx.EXPAND) self.SetSizer(sizer)
def __init__(self, parent, settings): self.settings = settings self.index = settings.indexGps self.devices = copy.copy(settings.devicesGps) self.comboType = None wx.Dialog.__init__(self, parent=parent, title="GPS") self.checkGps = wx.CheckBox(self, wx.ID_ANY, "Enable GPS") self.checkGps.SetToolTipString('Record GPS locations in scans') self.checkGps.SetValue(settings.gps) self.Bind(wx.EVT_CHECKBOX, self.__on_check, self.checkGps) self.checkGpsRetry = wx.CheckBox(self, wx.ID_ANY, "Retry after disconnection") self.checkGpsRetry.SetToolTipString('Retry GPS if disconnected') self.checkGpsRetry.SetValue(settings.gpsRetry) self.checkGpsRetry.Enable(settings.gps) self.gridDev = grid.Grid(self) self.gridDev.CreateGrid(len(self.devices), 5) self.gridDev.SetRowLabelSize(0) self.gridDev.SetColLabelValue(self.COL_SEL, "Selected") self.gridDev.SetColLabelValue(self.COL_NAME, "Name") self.gridDev.SetColLabelValue(self.COL_HOST, "Host") self.gridDev.SetColLabelValue(self.COL_TYPE, "Type") self.gridDev.SetColLabelValue(self.COL_TEST, "Test") try: self.gridDev.ShowScrollbars(wx.SHOW_SB_NEVER, wx.SHOW_SB_NEVER) except AttributeError: pass self.__set_dev_grid() sizerDevice = wx.BoxSizer(wx.HORIZONTAL) buttonAdd = wx.Button(self, wx.ID_ADD) self.buttonDel = wx.Button(self, wx.ID_DELETE) self.Bind(wx.EVT_BUTTON, self.__on_add, buttonAdd) self.Bind(wx.EVT_BUTTON, self.__on_del, self.buttonDel) sizerDevice.Add(buttonAdd, 0, wx.ALL) sizerDevice.Add(self.buttonDel, 0, wx.ALL) self.__set_button_state() buttonOk = wx.Button(self, wx.ID_OK) buttonCancel = wx.Button(self, wx.ID_CANCEL) sizerButtons = wx.StdDialogButtonSizer() sizerButtons.AddButton(buttonOk) sizerButtons.AddButton(buttonCancel) sizerButtons.Realize() self.Bind(wx.EVT_BUTTON, self.__on_ok, buttonOk) self.devbox = wx.BoxSizer(wx.VERTICAL) self.devbox.Add(self.checkGps, 0, wx.ALL | wx.EXPAND, 10) self.devbox.Add(self.checkGpsRetry, 0, wx.ALL | wx.EXPAND, 10) self.devbox.Add(self.gridDev, 1, wx.ALL | wx.EXPAND, 10) self.devbox.Add(sizerDevice, 0, wx.ALL | wx.EXPAND, 10) self.devbox.Add(sizerButtons, 0, wx.ALL | wx.EXPAND, 10) self.SetSizerAndFit(self.devbox)
def __init__(self): """Constructor""" wx.Frame.__init__(self, parent=None, title="Grid Tutorial Two", size=(800, 600)) panel = wx.Panel(self) myGrid = gridlib.Grid(panel) myGrid.CreateGrid(20, 8) myGrid.SetCellValue(0, 0, "Hello") print(myGrid.GetCellValue(0, 0)) myGrid.GetCellEditor(4, 5) # for i in range(5): # print(i) # myGrid.SelectBlock(4,i,4,i) # myGrid.SelectBlock(1,1,1,1) myGrid.SetCellValue(1, 1, "I'm in red!") myGrid.SetCellTextColour(1, 1, wx.RED) myGrid.SetCellEditor(5, 0, gridlib.GridCellNumberEditor(1, 1000)) myGrid.SetCellValue(5, 0, "123") myGrid.SetCellEditor(6, 0, gridlib.GridCellFloatEditor()) myGrid.SetCellValue(6, 0, "123.34") myGrid.SetCellEditor(7, 0, gridlib.GridCellNumberEditor()) # self.Bind(gridlib.EVT_GRID_SELECT_CELL, self.OnSelectCell) sizer = wx.BoxSizer(wx.VERTICAL) sizer.Add(myGrid) panel.SetSizer(sizer)
def __init__(self, parent, listagem_maquinas): style = wx.DEFAULT_DIALOG_STYLE | wx.RESIZE_BORDER super(JanelaListaMaquinasCadastradas, self).__init__(parent, -1, 'Listagem de maquinas cadastradas', style=style) # Configuracao de elementos de tela listagem_maquinas = listagem_maquinas.replace('lista,', '').split(',') tabela = gridlib.Grid(self, size=(320, 300)) tabela.CreateGrid(len(listagem_maquinas), 1) tabela.SetColLabelValue(0, "IP") tabela.SetColSize(0, 130) linha = 0 for maquina_ip in listagem_maquinas: tabela.SetCellValue(linha, 0, maquina_ip) tabela.SetReadOnly(linha, 0, True) linha = linha + 1 botoes = self.CreateButtonSizer(wx.OK) sizer = wx.BoxSizer(wx.VERTICAL) sizer.Add(tabela, 0, wx.CENTER | wx.ALL, 5) sizer.Add(botoes, 0, wx.CENTER | wx.ALL, 5) self.SetSizerAndFit(sizer)
def __init__( self, parent ): """Constructor""" wx.Panel.__init__( self, parent ) fieldSize = 10 global map global playerXHit global playerYHit playerXHit = 0 playerYHit = 0 self.grid = gridlib.Grid( self, style = wx.BORDER_SUNKEN ) self.grid.CreateGrid( fieldSize, fieldSize ) self.grid.Bind( gridlib.EVT_GRID_SELECT_CELL, self.onSingleSelect ) for row in range( 0, fieldSize ): for col in range( 0, fieldSize ): self.grid.SetRowSize( row, 30 ) self.grid.SetColSize( col, 30 ) sizer = wx.BoxSizer( wx.VERTICAL ) sizer.Add( self.grid, 1, wx.EXPAND ) self.SetSizer( sizer )
def __init__(self, parent,amount=0, bridgename=u"西直门桥"): wx.Panel.__init__(self,parent=parent) self.griddetail = gridlib.Grid(self) self.griddetail.CreateGrid(20,5,) self.griddetail.SetColSize(1,300) self.griddetail.SetColSize(0,100) # self.griddetail.SetRowSize(0,50) self.subbtn = wx.Button(self,-1,label = "查看详细信息") self.subbtn.SetBackgroundColour("black") self.subbtn.SetForegroundColour("white") # self.info = wx.StaticText(self,-1,"共有%d条数据,现在是第%d条") self.numinfo = wx.StaticText(self,-1,"一共有%d条相关数据"%amount) self.advicenum = wx.StaticText(self,-1,"在下面输入要跳转到的条数") # self.numinfo2 = wx.StaticText(self,-1,"跳转到") self.which2see = wx.TextCtrl(self, -1, value="1") self.rankinfo = wx.StaticText(self,-1,"这是第1条数据") self.rankinfo.SetBackgroundColour('gray') self.rankinfo.SetForegroundColour('white') self.seebtn = wx.Button(self,-1,label = '查看地图') self.wordPDF = wx.Button(self,-1,label = '存为word并打印') # self.numinfo3 = wx.StaticText(self,-1,"条") sizer = wx.BoxSizer(wx.VERTICAL) sizer.Add(self.subbtn, 0, wx.CENTER) sizer.Add(self.griddetail, 0,wx.CENTER) sizer.Add(self.numinfo, 0, wx.CENTER) sizer.Add(self.advicenum, 0, wx.CENTER) sizer.Add(self.which2see, 0, wx.CENTER) sizer.Add(self.rankinfo, 0, wx.CENTER) sizer.Add(self.seebtn, 0, wx.CENTER) sizer.Add(self.wordPDF, 0, wx.CENTER) self.SetSizer(sizer)
def _initUI_(self): #panel = wx.Panel(self) vbox = wx.BoxSizer(wx.VERTICAL) hbox1 = wx.BoxSizer(wx.HORIZONTAL) orderidlabel = wx.StaticText(self, label="Order Number") hbox1.Add(orderidlabel, flag=wx.LEFT, border=8) orderidinput = wx.TextCtrl(self) hbox1.Add(orderidinput, 1) vbox.Add(hbox1, flag=wx.LEFT | wx.RIGHT | wx.TOP, border=10) vbox.Add((-1, 25)) btnConfirm = wx.Button(self, label='Confirm', size=(70, 30)) btnCancel = wx.Button(self, label='Cancel', size=(70, 30)) btnsizer = wx.BoxSizer(wx.HORIZONTAL) btnsizer.Add(btnConfirm) btnsizer.Add(btnCancel, flag=wx.LEFT | wx.BOTTOM, border=5) vbox.Add(btnsizer, flag=wx.ALIGN_RIGHT | wx.RIGHT, border=10) vbox.Add((-1, 25)) grid = gridlib.Grid(self) grid.CreateGrid(10, 20) gsizer = wx.BoxSizer(wx.HORIZONTAL) gsizer.Add(grid, flag=wx.EXPAND | wx.LEFT | wx.BOTTOM, border=5) vbox.Add(gsizer, proportion=1, flag=wx.LEFT | wx.RIGHT | wx.EXPAND, border=10) self.SetSizer(vbox) self.SetAutoLayout(1) self.Layout()
def __init__(self, parent): wx.Panel.__init__(self, parent) text4 = 'Input Confirmation' font1 = font1 = wx.Font(18, wx.DEFAULT, wx.NORMAL, wx.NORMAL) wx.StaticText(self, -1, text4, (275, 10)).SetFont(font1) font2 = wx.Font(10, wx.DEFAULT, wx.NORMAL, wx.NORMAL) text41 = "test" self.st1 = wx.StaticText(self, -1, label=text41, pos=(10, 50)) self.st1.SetFont(font2) self.st2 = wx.StaticText(self, -1, label=text41, pos=(10, 75)) self.st2.SetFont(font2) self.st3 = wx.StaticText(self, -1, label=text41, pos=(10, 100)) self.st3.SetFont(font2) self.st4 = wx.StaticText(self, -1, label=text41, pos=(10, 125)) self.st4.SetFont(font2) self.st5 = wx.StaticText(self, -1, label=text41, pos=(10, 150)) self.st5.SetFont(font2) self.st6 = wx.StaticText(self, -1, label=text41, pos=(10, 175)) self.st6.SetFont(font2) self.st7 = wx.StaticText(self, -1, label=text41, pos=(10, 200)) self.st7.SetFont(font2) self.grid1 = grid.Grid(self, -1, (325, 50), (375, 300)) self.grid1.CreateGrid(26, 3) self.grid1.SetColSize(0, 100) self.grid1.SetColSize(1, 125) self.grid1.SetColSize(2, 125) self.btn1 = wx.Button(self, -1, "Back", (200, 400)) self.btn2 = wx.Button(self, -1, "Next", (300, 400)) self.btn3 = wx.Button(self, -1, "Save Preset", (400, 400))
def create_debtors_table(self, num_debtors): table_height = (num_debtors + 1)*25 psize = (710, min(table_height, 18*25)) gsize = (710, table_height) ppos = (self.MENU_WIDTH, 10) self.items['r_panel'] = scrolled.ScrolledPanel(self, size=psize, pos = ppos) self.g = g = grid.Grid(self.items['r_panel'], size = gsize) g.CreateGrid(num_debtors, 7) g.SetMargins(-10,-10) g.SetGridLineColour(BLACK) g.SetRowLabelSize(40) g.SetColLabelSize(25) g.EnableEditing(False) vbox = wx.BoxSizer(wx.VERTICAL) vbox.Add(self.g, 0, wx.EXPAND) self.items['r_panel'].SetSizer(vbox) self.items['r_panel'].SetAutoLayout(1) self.items['r_panel'].SetupScrolling(rate_x = 25, rate_y=25) # set up the labels labels = ['ID', 'Surname', 'Name', 'VIP', 'Mobile', 'Phone', 'Debt'] sizes = [90, 140, 120, 50, 90, 90, 90] for i in range(7): g.SetColLabelValue(i,labels[i]) g.SetColSize(i,sizes[i]) # Alignment for i in range(num_debtors): g.SetCellAlignment(i,3,wx.ALIGN_CENTRE,wx.ALIGN_CENTRE) g.SetCellAlignment(i,6,wx.ALIGN_RIGHT,wx.ALIGN_CENTRE) # event handling g.Bind(wx.EVT_MOUSEWHEEL, self.grid_handler) g.Bind(wx.grid.EVT_GRID_CELL_LEFT_DCLICK, self.grid_debtors_dclick)
def __init__(self, parent, title, rowString, colString, data, nrow=2): """data array""" self.parent = parent if data != None: [nrow, ncol] = shape(data) else: ncol = len(colString) nrow = len(rowString) size = ((ncol + 1) * 100, (nrow + 1) * 30 + 120) GeneralDialog.__init__(self, parent, title, size) dlgSizer = wx.BoxSizer(wx.VERTICAL) #fabriaction de la grille elle meme self.grid = wgrid.Grid(self, -1, size=((ncol + 1) * 90, (nrow + 1) * 30)) self.grid.CreateGrid(nrow, ncol) #self.grid.SetColSize(0,50);self.grid.SetMargins(20,20) for i in range(ncol): self.grid.SetColLabelValue(i, colString[i]) if len(rowString) > 1: for i in range(nrow): self.grid.SetRowLabelValue(i, rowString[i]) if data != None: for col in range(ncol): for row in range(nrow): self.grid.SetCellValue(row, col, str(data[row, col])) self.grid.AutoSize() dlgSizer.Add(self.grid, 0, wx.EXPAND) dlgSizer.AddSpacer((0, 10), -1) buttonSizer = self.CreateButtonSizer(wx.OK | wx.CANCEL) dlgSizer.Add(buttonSizer, 0, wx.ALIGN_CENTER | wx.ALIGN_BOTTOM) self.SetSizer(dlgSizer)